zoukankan      html  css  js  c++  java
  • SSI整合 示例

    sql语句

    create table user_c (id varchar(10) primary key,name varchar(20),age int ,address varchar(30);)

    1.引入jar包

     1 antlr-2.7.6.jar
     2 aspectjweaver.jar
     3 backport-util-concurrent.jar
     4 com.springsource.com.mchange.v2.c3p0-0.9.1.2.jar
     5 com.springsource.net.sf.cglib-2.2.0.jar
     6 com.springsource.org.aopalliance-1.0.0.jar
     7 com.springsource.org.apache.commons.logging-1.1.1.jar
     8 com.springsource.org.quartz-1.6.2.jar
     9 commons-collections-3.1.jar
    10 commons-fileupload-1.2.1.jar
    11 commons-httpclient-3.1.jar
    12 commons-io-1.3.2.jar
    13 dom4j-1.6.1.jar
    14 ehcache-1.5.0.jar
    15 freemarker-2.3.16.jar
    16 hibernate3.jar
    17 hibernate-jpa-2.0-api-1.0.0.Final.jar
    18 javassist-3.12.0.GA.jar
    19 javassist-3.7.ga.jar
    20 jcommon-1.0.17.jar
    21 jfreechart-1.0.14.jar
    22 json-lib-2.3-jdk15.jar
    23 jta-1.1.jar
    24 log4j-1.2.13.jar
    25 mybatis-3.2.2.jar
    26 mybatis-spring-1.2.0.jar
    27 mysql-connector-java-5.1.13-bin.jar
    28 ognl-3.0.jar
    29 org.springframework.aop-3.0.5.RELEASE.jar
    30 org.springframework.asm-3.0.5.RELEASE.jar
    31 org.springframework.aspects-3.0.5.RELEASE.jar
    32 org.springframework.beans-3.0.5.RELEASE.jar
    33 org.springframework.context.support-3.0.5.RELEASE.jar
    34 org.springframework.context-3.0.5.RELEASE.jar
    35 org.springframework.core-3.0.5.RELEASE.jar
    36 org.springframework.expression-3.0.5.RELEASE.jar
    37 org.springframework.instrument.tomcat-3.0.5.RELEASE.jar
    38 org.springframework.instrument-3.0.5.RELEASE.jar
    39 org.springframework.jdbc-3.0.5.RELEASE.jar
    40 org.springframework.jms-3.0.5.RELEASE.jar
    41 org.springframework.orm-3.0.5.RELEASE.jar
    42 org.springframework.oxm-3.0.5.RELEASE.jar
    43 org.springframework.test-3.0.5.RELEASE.jar
    44 org.springframework.transaction-3.0.5.RELEASE.jar
    45 org.springframework.web.portlet-3.0.5.RELEASE.jar
    46 org.springframework.web.servlet-3.0.5.RELEASE.jar
    47 org.springframework.web.struts-3.0.5.RELEASE.jar
    48 org.springframework.web-3.0.5.RELEASE.jar
    49 slf4j-api-1.6.1.jar
    50 slf4j-nop-1.6.1.jar
    51 struts2-core-2.2.1.jar
    52 struts2-spring-plugin-2.2.1.jar
    53 xwork-core-2.2.1.jar
    View Code

    2.写domain

    User.java

     1 package cn.itcast.mybatis.domain;
     2 
     3 public class User {
     4     private String id;
     5     private String name;
     6     private Integer age;
     7     private String address;
     8     public String getAddress() {
     9         return address;
    10     }
    11     public void setAddress(String address) {
    12         this.address = address;
    13     }
    14     public String getId() {
    15         return id;
    16     }
    17     public void setId(String id) {
    18         this.id = id;
    19     }
    20     public String getName() {
    21         return name;
    22     }
    23     public void setName(String name) {
    24         this.name = name;
    25     }
    26     public Integer getAge() {
    27         return age;
    28     }
    29     public void setAge(Integer age) {
    30         this.age = age;
    31     }
    32     @Override
    33     public String toString() {
    34         return "User [id=" + id + ", name=" + name + ", age=" + age + "]";
    35     }
    36     
    37 }
    View Code

    MyUser.xml   (mybatis对数据处理)

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <!DOCTYPE mapper
     3 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     4 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
     5 
     6 <mapper namespace="cn.itcast.mybatis.domain.User">
     7     <sql id="cols">
     8         id,name,age,address
     9     </sql>
    10     <sql id="ucols">
    11         name=#{name},age=#{age},address=#{address}
    12     </sql>
    13 
    14     <!-- 查询所有记录 -->
    15     <select id="listAll" resultType="aliasesUser">
    16         select <include refid="cols"/> from user_c
    17     </select>
    18     
    19     <!-- 按条件查询 -->
    20     <select id="find" parameterType="aliasesUser" resultType="aliasesUser">
    21         select * from user_c 
    22         <where>
    23         <if test="name!=null">
    24             and name like "%"#{name}"%"
    25         </if>
    26         <if test="age!=null">
    27             and age=#{age}
    28         </if>
    29         </where>
    30     </select>
    31     
    32     <!-- 查询一个用户 -->
    33     <select id="get" parameterType="string" resultType="aliasesUser">
    34         select <include refid="cols"/> from user_c where id=#{id}
    35     </select>
    36     
    37     <!-- 新增 -->
    38     <insert id="create" parameterType="aliasesUser">
    39         insert into user_c (id,name,age,address) values(#{id},#{name},#{age},#{address})
    40     </insert>
    41     
    42     <!-- 修改 -->
    43     <update id="update" parameterType="aliasesUser">
    44         update user_c
    45          <set>
    46              <if test="name!=null">
    47                  name=#{name},
    48              </if>
    49              <if test="age!=null">
    50                  age=#{age},
    51              </if>
    52              <if test="address!=null">
    53                  address=#{address},
    54              </if>
    55          </set>
    56          
    57         where id=#{id}
    58     </update>
    59     
    60     <!-- 删除 -->
    61     <delete id="delete" parameterType="string">
    62         delete from user_c where id=#{id}
    63     </delete>
    64 </mapper>

    3.dao层处理

     1 package cn.itcast.mybatis.dao;
     2 
     3 import java.util.List;
     4 
     5 import cn.itcast.mybatis.domain.User;
     6 
     7 
     8 public interface IUserDao {
     9     public List<User> list();
    10     public User get(String id);
    11     public int insert(User u);
    12     public int update(User u);
    13     public int deleteById(String id);
    14 }
    View Code

    daoImpl处理

     1 package cn.itcast.mybatis.dao;
     2 
     3 import java.util.List;
     4 
     5 import org.mybatis.spring.support.SqlSessionDaoSupport;
     6 
     7 import cn.itcast.mybatis.domain.User;
     8 
     9 public class UserDaoImpl extends SqlSessionDaoSupport implements IUserDao {
    10     
    11     //删除
    12     public int deleteById(String id) {
    13         return this.getSqlSession().delete("cn.itcast.mybatis.domain.User.delete",id);
    14     }
    15 
    16     //新增
    17     public int insert(User u) {
    18         return this.getSqlSession().insert("cn.itcast.mybatis.domain.User.create", u);
    19     }
    20 
    21     //列表
    22     public List<User> list() {
    23         return this.getSqlSession().selectList("cn.itcast.mybatis.domain.User.listAll");
    24     }
    25 
    26     //修改
    27     public int update(User u) {
    28         return this.getSqlSession().update("cn.itcast.mybatis.domain.User.update",u);
    29     }
    30 
    31     //获取对象
    32     public User get(String id) {
    33         return (User) this.getSqlSession().selectOne("cn.itcast.mybatis.domain.User.get", id);
    34     }
    35 
    36 }

    4.service层

     1 package cn.itcast.mybatis.service;
     2 
     3 import java.util.List;
     4 
     5 import cn.itcast.mybatis.domain.User;
     6 
     7 
     8 public interface IUserService {
     9     public List<User> list();
    10     public User get(String id);
    11     public int insert(User u);
    12     public int update(User u);
    13     public int deleteById(String id);
    14 }
    View Code

    serviceImpl

     1 package cn.itcast.mybatis.service;
     2 
     3 import java.util.List;
     4 
     5 import cn.itcast.mybatis.dao.IUserDao;
     6 import cn.itcast.mybatis.domain.User;
     7 
     8 public class UserServiceImpl implements IUserService {
     9 
    10     private IUserDao userDao;
    11     public void setUserDao(IUserDao userDao) {
    12         this.userDao = userDao;
    13     }
    14 
    15     public int deleteById(String id) {
    16         int i = userDao.deleteById(id);
    17         //测试事务
    18         int j = 1/0;
    19         return i;
    20     }
    21 
    22     public User get(String id) {
    23         return userDao.get(id);
    24     }
    25 
    26     public int insert(User u) {
    27         return userDao.insert(u);
    28     }
    29 
    30     public List<User> list() {
    31         return userDao.list();
    32     }
    33 
    34     public int update(User u) {
    35         return userDao.update(u);
    36     }
    37 
    38 }
    View Code

    5.action层

     1 package cn.itcast.mybatis.action;
     2 
     3 import java.util.List;
     4 
     5 import cn.itcast.mybatis.domain.User;
     6 import cn.itcast.mybatis.service.IUserService;
     7 
     8 import com.opensymphony.xwork2.ActionContext;
     9 import com.opensymphony.xwork2.ActionSupport;
    10 import com.opensymphony.xwork2.ModelDriven;
    11 
    12 public class UserAction extends ActionSupport implements ModelDriven<User> {
    13     private User model = new User();
    14     public User getModel() {
    15         return model;
    16     }
    17 
    18     private IUserService userService;
    19     public IUserService getUserService() {
    20         return userService;
    21     }
    22 
    23     public void setUserService(IUserService userService) {
    24         this.userService = userService;
    25     }
    26     
    27     public String list(){
    28         List<User> dataList = userService.list();
    29         ActionContext.getContext().put("dataList", dataList);
    30         
    31         return "plist";
    32     }
    33     
    34     public String tocreate(){
    35         
    36         return "pcreate";
    37     }
    38     
    39     public String toupdate(){
    40         User u = userService.get(model.getId());
    41         ActionContext.getContext().getValueStack().push(u);
    42         
    43         return "pupdate";
    44     }
    45     
    46     public String toview(){
    47         User u = userService.get(model.getId());
    48         ActionContext.getContext().getValueStack().push(u);
    49         
    50         return "pview";
    51     }
    52     
    53     public String createSave(){
    54         userService.insert(model);
    55         
    56         return "actlist";
    57     }
    58     
    59     public String updateSave(){
    60         userService.update(model);
    61         
    62         return "actlist";
    63     }
    64     
    65     public String delete(){
    66         userService.deleteById(model.getId());
    67         
    68         return "actlist";
    69     }
    70 }

    6.核心 配置文件

    sqlMapConfig.xml

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <!DOCTYPE configuration
     3 PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
     4 "http://mybatis.org/dtd/mybatis-3-config.dtd">
     5 <configuration>
     6     
     7    <typeAliases>
     8         <typeAlias type="cn.itcast.mybatis.domain.User" alias="aliasesUser"></typeAlias>
     9     </typeAliases>
    10  <environments default="development">
    11         
    12         <environment id="development">
    13             <transactionManager type="JDBC"/>
    14             <dataSource type="POOLED">
    15                 <property name="driver" value="com.mysql.jdbc.Driver"/>
    16                 <property name="url" value="jdbc:mysql://localhost:3306/mybatisdb?characterEncoding=UTF-8"/>
    17                 <property name="username" value="root"/>
    18                 <property name="password" value="friends"/>
    19             </dataSource>
    20         </environment>
    21 <!--         产品    可用于多个配置的 -->
    22         <environment id="product">
    23             <transactionManager type="JDBC"/>
    24             <dataSource type="POOLED">
    25                 <property name="driver" value="com.mysql.jdbc.Driver"/>
    26                 <property name="url" value="jdbc:mysql://localhost:3306/mybatisdb?characterEncoding=UTF-8"/>
    27                 <property name="username" value="root"/>
    28                 <property name="password" value="friends"/>
    29             </dataSource>
    30         </environment>
    31     </environments>
    32     <mappers>
    33         <mapper resource="cn/itcast/mybatis/domain/MyUser.xml"/>
    34     </mappers>
    35 </configuration>

    spring-beans.xml

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <beans xmlns="http://www.springframework.org/schema/beans"
     3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     4     xmlns:context="http://www.springframework.org/schema/context"
     5     xmlns:aop="http://www.springframework.org/schema/aop"
     6     xmlns:tx="http://www.springframework.org/schema/tx"
     7     xsi:schemaLocation="http://www.springframework.org/schema/beans 
     8                          http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
     9                          http://www.springframework.org/schema/context
    10                          http://www.springframework.org/schema/context/spring-context-3.0.xsd
    11                          http://www.springframework.org/schema/tx
    12                          http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
    13                          http://www.springframework.org/schema/aop 
    14                          http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
    15     
    16     <!-- 数据源 -->
    17     <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    18         <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
    19         <property name="url" value="jdbc:mysql://localhost/mybatisdb?characterEncoding=utf-8"></property>
    20         <property name="username" value="root"></property>
    21         <property name="password" value="friends"></property>
    22     </bean>
    23     
    24     <bean id="sessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    25         <property name="configLocation" value="classpath:sqlMapConfig.xml"></property>
    26         <property name="dataSource" ref="dataSource"></property>
    27 
    28     </bean>
    29     
    30     <!-- 事务相关控制 -->
    31     <bean name="transactionManager"
    32         class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    33         <property name="dataSource" ref="dataSource"/>
    34     </bean>
    35 
    36     <!-- 通知 -->
    37     <tx:advice id="tx"
    38         transaction-manager="transactionManager">
    39         <tx:attributes>
    40             <tx:method name="delete*" propagation="REQUIRED" />
    41             <tx:method name="insert*" propagation="REQUIRED" />
    42             <tx:method name="update*" propagation="REQUIRED" />
    43             <tx:method name="find*" read-only="true" />
    44             <tx:method name="get*" read-only="true" />
    45             <tx:method name="select*" read-only="true" />
    46         </tx:attributes>
    47     </tx:advice>
    48 
    49     <aop:config>
    50         <aop:pointcut id="pc" expression="execution(* cn.itcast.mybatis.service.*.*(..))" />
    51         <!--把事务控制在Service层-->
    52         <aop:advisor pointcut-ref="pc" advice-ref="tx" />
    53     </aop:config>
    54     
    55     <bean id="userDao" class="cn.itcast.mybatis.dao.UserDaoImpl">
    56         <property name="sqlSessionFactory" ref="sessionFactory"></property>
    57     </bean>
    58     
    59     <bean id="userService" class="cn.itcast.mybatis.service.UserServiceImpl">
    60         <property name="userDao" ref="userDao"></property>
    61     </bean>
    62     
    63     
    64     <bean id="userAction" class="cn.itcast.mybatis.action.UserAction" scope="prototype">
    65         <property name="userService" ref="userService">
    66 <!--         一样    <ref bean="userService"/> -->
    67         </property>
    68     </bean>
    69 </beans>

    struts.xml

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <!DOCTYPE struts PUBLIC
     3      "-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
     4      "http://struts.apache.org/dtds/struts-2.3.dtd">
     5 <struts>
     6      <constant name="struts.ui.theme" value="simple"></constant>
     7      <constant name="struts.devMode" value="true"></constant>
     8      <constant name="struts.objectFactory" value="spring"></constant>
     9      
    10      <package name="user" namespace="/user" extends="struts-default">
    11           <action name="userAction_*" class="userAction" method="{1}">
    12                <result name="pview">/WEB-INF/jsps/user/jUserView.jsp</result>
    13                <result name="plist">/WEB-INF/jsps/user/jUserList.jsp</result>
    14                <result name="pcreate">/WEB-INF/jsps/user/jUserCreate.jsp</result>
    15                <result name="pupdate">/WEB-INF/jsps/user/jUserUpdate.jsp</result>
    16                <result name="actlist" type="redirectAction">/user/userAction_list</result>
    17           </action>
    18      </package>
    19 </struts>

    web.xml

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
     3   <display-name>MySSI</display-name>
     4   
     5   <context-param>
     6         <param-name>contextConfigLocation</param-name>
     7         <param-value>classpath:spring-beans.xml</param-value>
     8     </context-param>
     9     <listener>
    10         <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    11     </listener>
    12 
    13     <filter>
    14         <filter-name>struts2</filter-name>
    15         <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    16     </filter>
    17     <filter-mapping>
    18         <filter-name>struts2</filter-name>
    19         <url-pattern>/*</url-pattern>
    20     </filter-mapping>
    21   
    22   <welcome-file-list>
    23     <welcome-file>index.jsp</welcome-file>
    24   </welcome-file-list>
    25 </web-app>
    View Code

    显示层

    jUserCreate.jsp

     1 <%@ page language="java" pageEncoding="UTF-8"%>
     2 <%@ taglib prefix="s" uri="/struts-tags" %>
     3 <html>
     4   <body>
     5 <form action="${pageContext.request.contextPath}/user/userAction_createSave" method="post">
     6     <s:hidden name="id"/>
     7 
     8 <h2>新增用户</h2>
     9     
    10     <table border="1">
    11     <tr>
    12         <td>姓名:</td><td><s:textfield name="name"/></td>
    13     </tr>
    14     <tr>
    15         <td>年龄:</td><td><s:textfield name="age"/></td>
    16     </tr>
    17     <tr>
    18         <td>地址:</td><td><s:textarea name="address"/></td>
    19     </tr>
    20         <td><input type="submit" name="btnOK"/></td>
    21     </tr>
    22     </table>  
    23 </form>      
    24   </body>
    25 </html>
    View Code

    jUserList.jsp

     1 <%@ page language="java" pageEncoding="UTF-8"%>
     2 <%@ taglib prefix="s" uri="/struts-tags" %> 
     3 <h2>用户列表</h2>
     4 
     5 <div style="padding:10px;">
     6     <a href="${pageContext.request.contextPath}/user/userAction_tocreate">新增</a>
     7 </div>
     8   
     9     <table border="1">
    10     <tr align="center">
    11         <td>序号</td>
    12         <td>姓名</td>
    13         <td>年龄</td>
    14         <td>地址</td>
    15         <td>操作</td>
    16     </tr>
    17     <s:iterator value="#dataList" var="u" status="line">
    18     <tr>
    19         <td align="center"><s:property value="#line.index+1"/></td>
    20         <td><s:property value="name"/></td>
    21         <td align="center"><s:property value="age"/></td>
    22         <td><s:property value="address"/></td>
    23         <td>
    24             <a href="${pageContext.request.contextPath}/user/userAction_toview?id=${u.id}">查看</a>
    25             <a href="${pageContext.request.contextPath}/user/userAction_toupdate?id=${u.id}">修改</a>
    26             <a href="${pageContext.request.contextPath}/user/userAction_delete?id=${u.id}">删除</a>
    27         </td>
    28     </tr>
    29     </s:iterator>
    30     
    31     </table> 
    View Code

    jUserUpdate.jsp

     1 <%@ page language="java" pageEncoding="UTF-8"%>
     2 <%@ taglib prefix="s" uri="/struts-tags" %>
     3 <html>
     4 <body>
     5 <form action="${pageContext.request.contextPath}/user/userAction_updateSave" method="post">
     6     <s:hidden name="id"/>
     7 
     8 <h2>修改用户</h2>
     9     
    10     <table border="1">
    11     <tr>
    12         <td>姓名:</td><td><s:textfield name="name"/></td>
    13     </tr>
    14     <tr>
    15         <td>年龄:</td><td><s:textfield name="age"/></td>
    16     </tr>
    17     <tr>
    18         <td>地址:</td><td><s:textarea name="address"/></td>
    19     </tr>
    20         <td><input type="submit" name="btnOK"/></td>
    21     </tr>
    22     </table>  
    23 </form>      
    24 </body>
    25 </html>
    View Code

    jUserView.jsp

     1 <%@ page language="java" pageEncoding="UTF-8"%>
     2 <%@ taglib prefix="s" uri="/struts-tags" %>
     3 <html>
     4 <body>
     5 <form action="${pageContext.request.contextPath}/user/userAction_createSave" method="post">
     6     <s:hidden name="id"/>
     7 
     8 <h2>浏览用户</h2>
     9 
    10 <div style="padding:10px;">
    11     <a href="#" onclick="history.go(-1);">返回</a>
    12 </div>
    13     
    14     <table border="1">
    15     <tr>
    16         <td>姓名:</td><td><s:property value="name"/></td>
    17     </tr>
    18     <tr>
    19         <td>年龄:</td><td><s:property value="age"/></td>
    20     </tr>
    21     <tr>
    22         <td>地址:</td><td><s:property value="address"/></td>
    23     </table>  
    24 </form>      
    25 </body>
    26 </html>
    View Code
  • 相关阅读:
    c# 让接口实现方法
    码支付 C#
    WebApi 接口返回值类型详解
    阿里云RDS数据库sql server 导入数据并添加作业小结
    IIS 图片 JS CSS 500错误
    XML字符串反序列化为实体
    找不到请求的 .Net Framework Data Provider
    JS通过ClassName禁止DIV点击
    WebRequest请求被中止: 未能创建 SSL/TLS 安全通道
    NetMQ 消息队列
  • 原文地址:https://www.cnblogs.com/friends-wf/p/3800644.html
Copyright © 2011-2022 走看看