freefly
          一門技術,如果不能講出來,那么就是沒有理解,如果不能很好的講出來,那么就是理解不夠透徹!
          posts - 9,comments - 3,trackbacks - 0
          1。我們可以做一個平凡的人,但決不能做一個平庸的人
          2。給生活一個笑臉,生活會給你一個太陽
          3。路漫漫其修遠兮,情深深且珍惜
          posted @ 2007-01-16 13:56 freefly 閱讀(221) | 評論 (0)編輯 收藏
          1. create view

                    ORACLE:    CREATE OR REPLACE VIEW V_FA_ADD_CO AS

                       SQLSEVER:    IF EXISTS (SELECT 1
                                                                      FROM  sysobjects
                                                                      WHERE  idobject_id ('V_FA_ADD_CO')
                                                                       AND   type = 'V')
                                              DROP VIEW V_FA_ADD_CO;
                                              CREATE VIEW V_FA_ADD_CO AS

              
          2. the equal between join and (+)
                
                 the table(its fields stay with (+)) right  join another  corresponding   table.
                 for example: select * from a,b where a.id=b.id(+)
                         equals  select * from b rigth join a on a.id=b.id
                         equals  select * from a left join a on a.id=b.id

                  notes:join先匹配有對應的記錄,
                        (+)卻是按順序來的
           

              3. substr,substring
               
          for example: there is a table's field "userName" and it's value is "wanghuiling".
                 sqlserver: substring(userName,0,4) = "wan",substring(userName,1,4) = "wang"
                 oracle:  substr(userName,0,4)="wang",substr(userName,1,4)="wang"
             
           4. link sign
               sqlserver: "+"
              
          oracle:"||"
           
          5. update a table's some fields

               for example:there are two tables: students1 and students2

               sqlserver:update students     (can't use alias)
                             set name=s2.name,sex=s2.sex,age=s2.age,tel=s2.tel
                             from students s2 where s1.id=s2.id;
               oracle: update students1 s1
                         set (name,sex,age,tel)=
                         (select name,sex,age,tel from students2 s2 where s1.id=s2.id);

          6. Date
              for example:there are a field of  date type:input_date  and its value is 2007-08-09.   
              sqlserver : year(input_date)=2007,month(input_date)=8,day(input_date)=9
               oracle : to_char(input_date,'YYYY')=2007, to_char(input_date,'MM')=8, to_char(input_date,'DD')=9

               sDate : a java String variable
               sqlserver : input_date = '"+sDate+"' 
               oracle : input_date =  to_char( '" + sDate + "',' 'YYYY-MM-DD'')

          posted @ 2006-12-31 15:42 freefly 閱讀(572) | 評論 (0)編輯 收藏

                Ultimatelly,I solved my problem.    My work is switch my application from mysql to sqlserver database .   At the very start,I forgot start sqlserver service,so the error "refused connect"  always appear,(so stupid error).Next,ther error  "Hibernate operation: could not execute query; uncategorized SQLException for SQL [select user0_.ID as ID, user0_.USERNAME as USERNAME0_, user0_.PASSWORD as PASSWORD0_ from user user0_]; SQL state [S1000]; error code [156]; 在關鍵字 'user' 附近有語法錯誤。; nested exception is java.sql.SQLException: 在關鍵字 'user' 附近有語法錯誤."   comes out ,  the problem scratchs my head over .this moring i got one friend's help and eventually found the "user" should not be used as a table name,because "user" is a key in sqlserver.  
                Below is work I have done : (Note: my env is eclipse+myeclipse)
                First:modify applicationContext.xml:
                
                From:
                1.<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
                     <property name="driverClassName">
                           <value>com.mysql.jdbc.Driver</value>
                     </property>
                     <property name="url">
                          <value>jdbc:mysql://localhost:3306/test</value>
                     </property>
                     <property name="username">
                          <value>root</value>
                     </property>
                     <property name="password">
                         <value>whl</value>
                     </property>
                  </bean>
               2. <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
               
               To:
                  <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
                        <property name="driverClassName">
                             <value>net.sourceforge.jtds.jdbc.Driver</value>
                        </property>
                        <property name="url">
                             <value>jdbc:jtds:sqlserver://localhost:1433/test</value>
                         </property>
                         <property name="username">
                              <value>sa</value>
                         </property>
                         <property name="password">
                              <value>mssqlsys</value>
                        </property>
                   </bean>

                  <prop key="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</prop>
                Second: import the sqlserver driver:jtds-1.1.jar

          posted @ 2006-04-11 12:41 freefly 閱讀(360) | 評論 (0)編輯 收藏
          1. Background

                   Usually,When we develop our web application,we need create menu.We can use Javascript to design web menu,but if thus,we have to compile many codes,and our application hasn't good  revisability and maintainability .Struts-menu provides us a convenient web menu design way,we can put our web menu data in  a menu-config.xml configuration file,and read the data with struts-menu lable.

             2.  Struts  Menu Example
              
                  You can go here http://demo.raibledesigns.com/struts-menu/ to see the example;
                  Or download the example application :struts-menu-2.3.zip,follow the below instruction:  
                         Unzip it to a local directory.  
                         Download and install Tomcat or another Java Servlet container.  
                         Put struts-menu.war in Tomcat's webapps folder and start the server. 
                         Go to http://localhost:8080/struts-menu 

           3.   Integrating Struts Menu into your application

                1.  Place struts-menu-2.3.jar into your app's WEB-INF/lib directory.(maybe you also need put common-lang.jar)
                2.  Place struts-menu.tld,and struts-menu-el.tld into your app's WEB-INF directory
                3.  Copy the common,images,scripts,template,styles directory from the above struts-menu.war exmaple application  to your web directory.(if use Myeclipse,put those directorys in webroot directory)
                4.  Add the plug-in settings to your struts-config.xml file.                 
                       
                         <plug-in className="net.sf.navigator.menu.MenuPlugIn">
                                   <set-property property="menuConfig"
                                               value="/WEB-INF/menu-config.xml"/>
                          </plug-in>
               
                  5.  You will need to declare your menu's attributes in a your App /WEB-INF/menu-config.xml file.Here's  a short  snippet of what might look like:        
                 
                       <Menu name="contactMenu" title="Contact" location="?Contact">
                            <Item name="email" title="E-Mail" location="?EMail"/>
                            <Item name="phone" title="Phone" location="?Phone"/>
                       </Menu>
              
                   6.   Add a taglib declaration to the top of your JSP: 

                  <%@ taglib uri="http://struts-menu.sf.net/tag" prefix="menu" %>

                  7.  Add taglib code to render your menu in your JSP: 

                         <menu:useMenuDisplayer name="TabbedMenu"
                             bundle="org.apache.struts.action.MESSAGE">
                              <menu:displayMenu name="Home"/>
                              <menu:displayMenu name="About"/>
                         </menu:useMenuDisplayer>
                 
                    
                 8.  Below is a whole test.jsp
                      <%@ page contentType="text/html; charset=UTF-8" %>
                      <%@ taglib uri="            <%@ taglib uri="            <html:html>
                       <head>
                       <html:base />
                           <title>menu</title>
             
                           <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

                
                           <link rel="stylesheet" type="text/css" media="screen"
                                         href="styles/global.css" />
                                <link rel="stylesheet" type="text/css" media="screen"
                                        href="styles/coolmenu.css" />
              
                          <script type="text/javascript" src="scripts/coolmenus4.js"></script>
                          <script type="text/javascript" src="scripts/cm_addins.js"></script>
                      </head>
           
                      <body>
                         <script type="text/javascript" src="scripts/coolmenu4-config.js"></script> 
             
                         <menu:useMenuDisplayer name="CoolMenu4"
                             bundle="org.apache.struts.action.MESSAGE">
                             <menu:displayMenu name="Home"/>
                            <menu:displayMenu name="About"/>
                        </menu:useMenuDisplayer>
                    </body>
                 </html:html>








                        
                  

           Here is my solution for  mess code on page,hope this can help you!
           The point is your database coding should be consistent with the coding of  character that you plan to insert into the database.
           Attention: Here,I take "UTF-8" as default character coding way .
           There are three steps:
           1. set page charset 
               e.g      <%@ page language="java" contentType="text/html; charset=UTF-8" %>
              
           2. create character filter:
               package com.victory.util;

               import javax.servlet.http.HttpServlet;
               import javax.servlet.Filter;
               import javax.servlet.FilterConfig;
               import javax.servlet.ServletException;
               import javax.servlet.ServletRequest;
               import javax.servlet.ServletResponse;
               import javax.servlet.FilterChain;
               import javax.servlet.http.*;
               import java.io.IOException;
               public class CharacterEncodingFilter
                 extends HttpServlet
                 implements Filter {

                 private FilterConfig filterConfig;
                 private String targetEncoding = "ASCII";

               /**
                * Called by the web container to indicate to a filter that it is being placed
                * into service.
                *
                * @param filterConfig FilterConfig
                * @throws ServletException
                * @todo Implement this javax.servlet.Filter method
               */
                public void init(FilterConfig filterConfig) throws ServletException {
                this.filterConfig = filterConfig;
                this.targetEncoding = filterConfig.getInitParameter("encoding");
               }

              /**
               * The <code>doFilter</code> method of the Filter is called by the container
               * each time a request/response pair is passed through the chain due to a
               * client request for a resource at the end of the chain.
               *
               * @param request ServletRequest
               * @param response ServletResponse
               * @param chain FilterChain
               * @throws IOException
               * @throws ServletException
               * @todo Implement this javax.servlet.Filter method
               */
               public void doFilter(ServletRequest srequest, ServletResponse sresponse,
                                 FilterChain chain) throws IOException, ServletException {
                try {
                  HttpServletRequest request = (HttpServletRequest) srequest;
                  request.setCharacterEncoding(targetEncoding);
                  chain.doFilter(srequest, sresponse);
                    }
                catch (ServletException sx) {
                   filterConfig.getServletContext().log(sx.getMessage());
                    }
                catch (IOException iox) {
                   filterConfig.getServletContext().log(iox.getMessage());
                  }
                }

              /**
               * Called by the web container to indicate to a filter that it is being taken
               * out of service.
               *
               * @todo Implement this javax.servlet.Filter method
               */
               public void destroy() {
                 filterConfig = null;
                 targetEncoding = null;
               }
            }
            
            3.config web.xml
              attention: add these to your web.xml
               <filter>
               <filter-name>EncodingFilter</filter-name>
               <filter-class>com.victory.util.CharacterEncodingFilter</filter-class>
               <init-param>
                 <param-name>encoding</param-name>
                 <param-value>UTF-8</param-value>
               </init-param>
              </filter>
              <filter-mapping>
              <filter-name>EncodingFilter</filter-name>
               <url-pattern>/*</url-pattern>
              </filter-mapping> 
            4.set database configration
               modify the file:    my.ini
               [client]     default-character-set=utf8 
               [mysqld]  default-character-set=utf8
            5.restart Mysql server
            6.modified your table coding way to utf8

               or ceate your table like this :
               CREATE TABLE `user` (
              `ID` int(11) NOT NULL auto_increment,
              `USERNAME` varchar(50) NOT NULL default '',
              `PASSWORD` varchar(50) NOT NULL default '',
               PRIMARY KEY  (`ID`)
               ) ENGINE=MyISAM DEFAULT CHARSET=utf8; 
            7.restrart your tomcat sever

             OK,it's all.

             Authrougn I have sovled   my problem, I think I  don't have enough understanding for it,  So hope    communicate with you! 

             Attention:mess code also exist in your database,through page hasn't mess code.
             
               


             
            
                 
               

          posted @ 2006-03-23 13:07 freefly 閱讀(456) | 評論 (0)編輯 收藏
          主站蜘蛛池模板: 枞阳县| 新巴尔虎左旗| 大港区| 新平| 裕民县| 苍山县| 崇阳县| 读书| 兰西县| 平果县| 资中县| 拉孜县| 岳池县| 新乐市| 清原| 伊宁市| 梨树县| 塔河县| 黔西| 定结县| 双峰县| 含山县| 肇东市| 得荣县| 乐平市| 高雄县| 剑阁县| 霸州市| 巴林左旗| 宜兴市| 望城县| 汾阳市| 翁源县| 武乡县| 湛江市| 察哈| 渭南市| 文水县| 依兰县| 光泽县| 济南市|