久久久美女毛片,久久久久久久91,日韩视频―中文字幕http://www.aygfsteel.com/righttsia/category/46537.html RECORD my life. Maybe in TECH field.zh-cnMon, 04 Oct 2010 22:59:10 GMTMon, 04 Oct 2010 22:59:10 GMT60SSH整合過(guò)程http://www.aygfsteel.com/righttsia/archive/2010/09/30/333587.htmlSolo.E.ChSolo.E.ChThu, 30 Sep 2010 12:12:00 GMThttp://www.aygfsteel.com/righttsia/archive/2010/09/30/333587.htmlhttp://www.aygfsteel.com/righttsia/comments/333587.htmlhttp://www.aygfsteel.com/righttsia/archive/2010/09/30/333587.html#Feedback0http://www.aygfsteel.com/righttsia/comments/commentRss/333587.htmlhttp://www.aygfsteel.com/righttsia/services/trackbacks/333587.html閱讀全文

Solo.E.Ch 2010-09-30 20:12 發(fā)表評(píng)論
]]>
Spring 學(xué)習(xí)過(guò)程http://www.aygfsteel.com/righttsia/archive/2010/09/30/333586.htmlSolo.E.ChSolo.E.ChThu, 30 Sep 2010 12:05:00 GMThttp://www.aygfsteel.com/righttsia/archive/2010/09/30/333586.htmlhttp://www.aygfsteel.com/righttsia/comments/333586.htmlhttp://www.aygfsteel.com/righttsia/archive/2010/09/30/333586.html#Feedback0http://www.aygfsteel.com/righttsia/comments/commentRss/333586.htmlhttp://www.aygfsteel.com/righttsia/services/trackbacks/333586.html 1,建立web project導(dǎo)包

Spring的版本:3.0.3
需要的包:
org.springframework.asm-3.0.3.RELEASE.jar
org.springframework.beans-3.0.3.RELEASE.jar
org.springframework.context-3.0.3.RELEASE.jar
org.springframework.core-3.0.3.RELEASE.jar
org.springframework.exception-3.0.3.RELEASE.jar
org.springframework.web-3.0.3.RELEASE.jar
org.springframework.web.servlet-3.0.3.RELEASE.jar
commons-fileupload-1.2.1.jar  //這個(gè)在struts2里找的
commons-logging-1.1.1.jar

2,建立vo ,setter getter

User.java
package com.cscw.spring.test;

public class User {
    
private String name;
    
    
private String password;
    
    
public String getName() {
        
return name;
    }
    
public void setName(String name) {
        
this.name = name;
    }
    
public String getPassword() {
        
return password;
    }
    
public void setPassword(String password) {
        
this.password = password;
    }
}

3.根目錄建立applicationContext.xml,內(nèi)容可在doc找

applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation
="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"
>

  
<bean id="user" class="com.cscw.spring.test.User">  //類路徑
    
<!-- collaborators and configuration for this bean go here -->
  
</bean>
<!-- more bean definitions go here -->

</beans>
4.測(cè)試代碼Test.java

Test.java
package com.cscw.spring.test;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Test {
    
public static void main(String[] args) {
        
// TODO Auto-generated method stub
            ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
            User user 
= (User)ctx.getBean("user");
            user.setName(
"yse");
            user.setPassword(
"password");
            System.out.println(
""+user.getName()+user.getPassword());            
    }
}




Solo.E.Ch 2010-09-30 20:05 發(fā)表評(píng)論
]]>
Hibernate 學(xué)習(xí)過(guò)程http://www.aygfsteel.com/righttsia/archive/2010/09/30/333585.htmlSolo.E.ChSolo.E.ChThu, 30 Sep 2010 12:03:00 GMThttp://www.aygfsteel.com/righttsia/archive/2010/09/30/333585.htmlhttp://www.aygfsteel.com/righttsia/comments/333585.htmlhttp://www.aygfsteel.com/righttsia/archive/2010/09/30/333585.html#Feedback0http://www.aygfsteel.com/righttsia/comments/commentRss/333585.htmlhttp://www.aygfsteel.com/righttsia/services/trackbacks/333585.html 1、簡(jiǎn)單例子

hibernate.cfg.xml

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"
>

<!-- Generated by MyEclipse Hibernate Tools.                   -->
<hibernate-configuration>

<session-factory>
   
<property name="connection.username">root</property>
   
<property name="connection.url">jdbc:mysql://localhost:3306/test</property>
   
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
   
<property name="myeclipse.connection.profile">MySql</property>
   
<property name="connection.password">root</property>
   
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
   
<property name="show_sql">true</property>
   
<property name="transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property>
   
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
   
<mapping resource="com/study/hibernate/Person.hbm.xml" />

</session-factory>

</hibernate-configuration>


Person.hbm.xml//與數(shù)據(jù)庫(kù)進(jìn)行字段映射、也可用Annotation

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
>
<!--
Mapping file autogenerated by MyEclipse - Hibernate Tools
-->
<hibernate-mapping>
<class name="com.study.hibernate.Person" table="person"
   catalog
="test">
   
<id name="id" type="java.lang.String">
    
<column name="id" length="32" />
    
<generator class="assigned" />
   
</id>
   
<property name="name" type="java.lang.String">
    
<column name="name" length="20" not-null="true" />
   
</property>
   
<property name="password" type="java.lang.String">
    
<column name="password" length="20" not-null="true" />
   
</property>
   
<property name="sex" type="java.lang.String">
    
<column name="sex" length="2" />
   
</property>
   
<property name="email" type="java.lang.String">
    
<column name="email" length="30" />
   
</property>
</class>
</hibernate-mapping>


POJO類

package com.study.hibernate;

public class Person {
private String id;

private String name;

private String password;

private String sex;

private String email;

public String getEmail() {
   
return email;
}

public void setEmail(String email) {
   
this.email = email;
}

public String getId() {
   
return id;
}

public void setId(String id) {
   
this.id = id;
}

public String getName() {
   
return name;
}

public void setName(String name) {
   
this.name = name;
}

public String getPassword() {
   
return password;
}

public void setPassword(String password) {
   
this.password = password;
}

public String getSex() {
   
return sex;
}

public void setSex(String sex) {
   
this.sex = sex;
}

}


操作類

package com.study.hibernate;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;

public class PersonOperate {
private Session session = null;

public PersonOperate(){
   Configuration config 
= new Configuration().configure();
 
   SessionFactory factory 
= config.buildSessionFactory();
 
   
this.session = factory.openSession();
}
public void insert(Person p){
   Transaction trc 
= this.session.beginTransaction();
   
this.session.save(p);
   trc.commit();
}

}


測(cè)試類

package com.study.hibernate;

public class TestPO {
public static void main(String[] args) {
   
// TODO Auto-generated method stub
   Person p = new Person();
   p.setId(
"san");
   p.setName(
"he");
   p.setPassword(
"yong");
   p.setSex(
"");
   p.setEmail(
"hao123@126.com");
 
   PersonOperate po 
= new PersonOperate();
   po.insert(p);

}

}

只是配置簡(jiǎn)單例子的話還是蠻簡(jiǎn)單的,未完待續(xù)……



Solo.E.Ch 2010-09-30 20:03 發(fā)表評(píng)論
]]>
strut2 學(xué)習(xí)過(guò)程http://www.aygfsteel.com/righttsia/archive/2010/09/30/333583.htmlSolo.E.ChSolo.E.ChThu, 30 Sep 2010 11:53:00 GMThttp://www.aygfsteel.com/righttsia/archive/2010/09/30/333583.htmlhttp://www.aygfsteel.com/righttsia/comments/333583.htmlhttp://www.aygfsteel.com/righttsia/archive/2010/09/30/333583.html#Feedback0http://www.aygfsteel.com/righttsia/comments/commentRss/333583.htmlhttp://www.aygfsteel.com/righttsia/services/trackbacks/333583.html 一、Struts2.0的配置,主要分三個(gè)步驟:(先快速配置一個(gè)簡(jiǎn)單例子)

   1 首先加載Struts2.0所需的jar包。在WEB-INF文件夾下創(chuàng)建一個(gè)lib文件夾主要放的jar為
      commons-logging-1.1.jar
      freemarker-2.3.8.jar
      ognl-2.6.11.jar
      struts2-core-2.0.8.jar
      xwork-2.0.3.jar
      commons-fileupload-1.2.1.jar

   2 配置web.xml文件。

WEB-INF文件夾里面有個(gè)web.xml,新加“filter”和“filter-mapping” 節(jié)點(diǎn)。web.xml配置如下:

<filter>
  
<filter-name>struts2</filter-name>
  
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>

<filter-mapping>
  
<filter-name>struts2</filter-name>
  
<url-pattern>/*</url-pattern>
</filter-mapping>

 
在這里我們需要定義filter的名字,我定義的是叫struts2

    3 配置struts.xml文件。

最后一步在我們的src源文件里,需要加一個(gè)struts.xml,記住這里要和com包在同級(jí)目錄下,內(nèi)容如下:

<!DOCTYPE struts PUBLIC
    
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="com" extends="struts-default">

        
<action name="HelloWorld" class="com.HelloWorld">
            
<result>/HelloWorld.jsp</result>
        
</action>
        
<!—這里是我添加的一個(gè)action -->

    
</package>
</struts>

struts2.0就算配置完成了,下我來(lái)說(shuō)說(shuō)我是怎么使用他的。

簡(jiǎn)單的HelloWorld跳轉(zhuǎn)實(shí)例

首先我們需要有一個(gè)jsp頁(yè)面“HelloWorld.jsp”,代碼如下:


<%@taglib prefix="s" uri="/struts-tags"%>
<html>
    
<head>
        
<title>Hello World!</title>
    
</head>
    
<body>
        
<h2><s:property value="message" /></h2>
    
</body>
</html>


我們可以看到這里我們看到如果是運(yùn)行起來(lái)的話,頁(yè)面里面應(yīng)該顯示message的值。

我們還需要一個(gè)HelloWorld.java類,代碼如下:
package com;
import com.opensymphony.xwork2.ActionSupport;
public class HelloWorld extends ActionSupport {
    
public static final String MESSAGE = "Struts is up and running ";
    
public String execute() throws Exception {
        setMessage(MESSAGE);
        
return SUCCESS;
    }
    
private String message;
    
public void setMessage(String message) {
        
this.message = message;
    }
    
public String getMessage() {
        
return message;
    }
}

代碼很簡(jiǎn)單主要就是給message賦“Struts is up and running”值,千萬(wàn)別忘了需要繼承ActionSupport類即可。

二、action的學(xué)習(xí)

1)方法調(diào)用:
    理論上Struts 2.0的Action無(wú)須實(shí)現(xiàn)任何接口或繼承任何類型,但是,我們?yōu)榱朔奖銓?shí)現(xiàn)Action,大多數(shù)情況下都會(huì)繼承com.opensymphony.xwork2.ActionSupport類,并重載(Override)此類里的String execute()方法。此為默認(rèn)的調(diào)用方法。若要自定義調(diào)用方法,有三種方法:
     1.method單一方法,每一個(gè)action配一個(gè)方法
     2.DMI(動(dòng)態(tài)調(diào)用)用action!method 
     3.通配符*_*,大幅度減少配置量 action_method

2)接收參數(shù):
    1.屬性接收
例子:

Login.java

import com.opensymphony.xwork2.ActionSupport;

publicclass Login 
extends ActionSupport {
    
private String name;
    
private String password;
    
private String message;
    
    
public String getName() {
        
return name;
    }
    
    publicvoid setName(String name) {
        
this.name = name;
    }
    
    
public String getPassword() {
        
return password;
    }
    
    publicvoid setPassword(String password) {
        
this.password = password;
    }
    
    
public String getMessage() {
        
return message;
    }

    @Override
    
public String execute() {
        
if("max".equals(name) &&"Secret".equals(password)) {
            message 
="Welcome, "+ name;
        }
else{
            message 
="Invalid user or password";
        }
        
return SUCCESS;
    }
}
   

 Login.jsp
<%@ page contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
    
<title>Login</title>
</head>
<body>
<s:form action="Login" method="POST">
    
<s:textfield name="name" label="User name"/>
    
<s:password name="password" label="Password"/>
    
<s:submit value="Submit"/>
</s:form>
</body>
</html>

    2.domain接收,更高級(jí)的POJO訪問(wèn)路徑問(wèn)題,將name和password從Login類中分離出來(lái),到新建類User中

LoginX.java

import com.opensymphony.xwork2.ActionSupport;

publicclass LoginX 
extends ActionSupport {
    
private User user;
    
private String message;
    
    publicvoid setUser(User user) {
        
this.user = user;
    }
    
    
public User getUser() {
        
return user;
    }
    
    
public String getMessage() {
        
return message;
    }
    
    @Override
    
public String execute() {        
        
if("max".equals(user.getName()) &&"secret".equals(user.getPassword())) {
            message 
="Welcome, "+ user.getName();
        }
else{
            message 
="Invalid user or password";
        }
        
return SUCCESS;
    }
}


Login.jsp
<%@ page contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
    
<title>Login</title>
</head>
<body>
<s:form action="LoginX" method="POST">
    
<s:textfield name="user.name" label="User name"/>
    
<s:password name="user.password" label="Password"/>
    
<s:submit value="Submit"/>
</s:form>
</body>
</html>


(setter、getter要大寫(xiě)首字母如setName,之前因?yàn)檫@個(gè)老不成功,還不知道為什么)
三、完成頁(yè)面框架的部署

article_add.jsp

article_addInput.jsp

article_delete.jsp

article_update.jsp

article_updateInput.jsp

article_list.jsp
如此命名可方便通配符配置,減少配置量。

四、CRUD

與之前完成的DAO模式代碼切合,即Service
底層代碼沒(méi)什么變化,struts2取代了jsp使頁(yè)面清潔了。

五、標(biāo)簽

目前才開(kāi)始用到了
    <s:iterator value="#request.name" var xx>
    <s:property value="#xx.XXX"/>
    </s:iterator>
以及
<s:form action="actionName" method="POST">
    <s:textfield name="    article.sTitle" label="標(biāo)題"/>
    <s:textfield name="article.sContent" label="內(nèi)容"/>
    <s:submit value="Submit"/>
</s:form>

未完待續(xù)、以后學(xué)的繼續(xù)添加~



Solo.E.Ch 2010-09-30 19:53 發(fā)表評(píng)論
]]>
主站蜘蛛池模板: 镇原县| 弥渡县| 突泉县| 嘉鱼县| 赞皇县| 宾阳县| 兴城市| 泸溪县| 阿图什市| 遂溪县| 朝阳区| 巴林左旗| 电白县| 曲靖市| 巩留县| 若羌县| 晋中市| 巴马| 南投市| 河西区| 丘北县| 桂东县| 自贡市| 樟树市| 景谷| 合川市| 桃江县| 赣州市| 合水县| 湖南省| 芦溪县| 北京市| 镇远县| 唐山市| 济阳县| 永福县| 施甸县| 正定县| 东海县| 闵行区| 禹州市|