Maven+SSM框架實現簡單的增刪改查

Spring介紹:

spring 使用基本的 JavaBean 來完成之前只可能由 EJB 完成的事情。然而, Spring的用途不只限於服務器端的開發。從簡單性、可測試性和鬆耦合的角度而言,任何Java 應用均可以從 Spring 中受益。 簡單來講, Spring 是一個輕量級的控制反轉(IoC )和麪向切面( AOP )的容器框架。javascript

SpringMVC介紹

Spring MVC 屬於 SpringFrameWork 的後續產品,已經融合在Spring Web Flow 裏面。 Spring MVC  分離了  控制器 、模型  對象 、分派器以及處理程序對象的角色,這種分離讓它們更容易進行定製。

MyBatis介紹

  MyBatis  本是  apache 的一個開源項目  iBatis , 2010 年這個項目由apache software foundation  遷移到了 google code ,而且更名爲 MyBatis  。MyBatis 是一個基於 Java 的  持久層 框架。 iBATIS 提供的  持久層 框架包括SQL Maps 和 Data Access Objects ( DAO ) MyBatis  消除了幾乎全部的 JDBC 代碼和參數的手工設置以及結果集的檢索。 MyBatis  使用簡單的  XML 或註解用於配置和原始映射,將接口和  Java  的 POJOs ( Plain Old Java Objects ,普通的  Java 對象)映射成數據庫中的記錄。
首先不是maven架構整合的  SSM 框架

 

建立數據庫、表db_zsl   t_user   user_t【最下面有sql語句】css

1.項目總體結構html

2.添加相關jar 包java

3.項目總體結構出來了python

4.建立model【User】mysql

 

  1. package com.lyt.model;  
  2.   
  3. /**  
  4.  * 用戶  
  5.  * @author 
  6.  *  
  7.  */    
  8. public class User {    
  9.     
  10.     private int id;    
  11.     private String userName;   
  12.     private String age;    
  13.       
  14.     @Override  
  15.     public String toString() {  
  16.         return "User [id=" + id + ", age=" + age + ", userName=" + userName  
  17.                 + "]";  
  18.     }  
  19.     public User(){    
  20.         super();    
  21.     }    
  22.     public int getId() {    
  23.         return id;    
  24.     }    
  25.     public void setId(int id) {    
  26.         this.id = id;    
  27.     }    
  28.     public String getAge() {    
  29.         return age;    
  30.     }    
  31.     public void setAge(String age) {    
  32.         this.age = age;    
  33.     }    
  34.     public String getUserName() {    
  35.         return userName;    
  36.     }    
  37.     public void setUserName(String userName) {    
  38.         this.userName = userName;    
  39.     }    
  40.     public User(int id, String age, String userName) {    
  41.         super();    
  42.         this.id = id;    
  43.         this.age = age;    
  44.         this.userName = userName;    
  45.     }    
  46. }    

5.建立DAO接口【在mybatis中 mapper就至關於dao】jquery

 

 

  1. package com.lyt.mapper;  
  2.   
  3. import java.util.List;  
  4.   
  5. import com.lyt.model.User;  
  6. /** 
  7.  * 作爲 DAO的接口 
  8.  * @author 
  9.  */  
  10. public interface UserMapper {    
  11.     void save(User user);    
  12.     boolean update(User user);    
  13.     boolean delete(int id);    
  14.     User findById(int id);    
  15.     List<User> findAll();    
  16. }    
  17. 5.建立DAO接口【在mybatis中 mapper就至關於dao】

     

     

    1. package com.lyt.mapper;  
    2.   
    3. import java.util.List;  
    4.   
    5. import com.lyt.model.User;  
    6. /** 
    7.  * 作爲 DAO的接口 
    8.  * @author */  
    9. public interface UserMapper {    
    10.     void save(User user);    
    11.     boolean update(User user);    
    12.     boolean delete(int id);    
    13.     User findById(int id);    
    14.     List<User> findAll();    
    15. }    

    6.實現dao接口【mybatis中就是UserMapper.xml文件】
    1. <?xml version="1.0" encoding="UTF-8"?>  
    2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"     
    3. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">    
    4. <!--     
    5.     namespace:必須與對應的接口全類名一致  UserMapper.java  
    6.     id :必須與對應接口的某個對應的方法名一致即必需要和UserMapper.java接口中的方法同名。  
    7.  -->    
    8.  <mapper namespace="com.lyt.mapper.UserMapper">  
    9.    
    10.     <insert id="save" parameterType="User">  
    11.         insert into t_user(user_name,user_age) values(#{userName},#{age})  
    12.     </insert>  
    13.       
    14.     <update id="update" parameterType="User">    
    15.         update t_user set user_name=#{userName},user_age=#{age} where user_id=#{id}    
    16.     </update>   
    17.       
    18.     <delete id="delete" parameterType="int">    
    19.         delete from t_user where user_id=#{id}    
    20.     </delete>    
    21.         
    22.      <!-- mybsits_config中配置的alias類別名,也可直接配置resultType爲類路徑 -->      
    23.     <select id="findById" parameterType="int" resultType="User">    
    24.         select user_id id,user_name userName,user_age age from t_user where user_id=#{id}    
    25.     </select>    
    26.         
    27.     <select id="findAll" resultType="User">    
    28.         select user_id id,user_name userName,user_age age from t_user    
    29.     </select>   
    30.       
    31.  </mapper>  

    這裏對這個xml文件做幾點說明: 
    一、namespace必須與對應的接口全類名一致。 
    二、id必須與對應接口的某個對應的方法名一致即必需要和UserMapper.java接口中的方法同名。 

     

     

    ---------------------------------------------------

    7.mybatis與Spring整合【spring-common.xml】放在src的根目錄下web

     對於Mybatis和Spring的整合是這篇博文的重點,須要配置的內容在下面有詳細的解釋。spring

     

    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" xmlns:p="http://www.springframework.org/schema/p"  
    4.     xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"  
    5.     xsi:schemaLocation="  
    6.         http://www.springframework.org/schema/beans  
    7.         http://www.springframework.org/schema/beans/spring-beans-4.0.xsd  
    8.         http://www.springframework.org/schema/context  
    9.         http://www.springframework.org/schema/context/spring-context-4.0.xsd  
    10.         http://www.springframework.org/schema/tx  
    11.         http://www.springframework.org/schema/tx/spring-tx-4.0.xsd">  
    12.   
    13. <!-- Mybatis和Spring的整合 -->  
    14.     <!-- 1. 數據源 : DriverManagerDataSource -->  
    15.     <bean id="dataSource"  
    16.         class="org.springframework.jdbc.datasource.DriverManagerDataSource">  
    17.         <property name="driverClassName" value="com.mysql.jdbc.Driver" />  
    18.         <property name="url" value="jdbc:mysql://localhost:3306/db_zsl" />  
    19.         <property name="username" value="root" />  
    20.         <property name="password" value="root" />  
    21.     </bean>  
    22.   
    23.     <!--  
    24.         2. mybatis的SqlSession的工廠: SqlSessionFactoryBean dataSource:引用數據源  
    25.   
    26.         MyBatis定義數據源,贊成加載配置  
    27.     -->  
    28.     <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">  
    29.         <property name="dataSource" ref="dataSource"></property>  
    30.         <property name="configLocation" value="classpath:mybatis-config.xml" />   
    31.     </bean>  
    32.   
    33.     <!--  
    34.         3. mybatis自動掃描加載Sql映射文件/接口 : MapperScannerConfigurer sqlSessionFactory  
    35.   
    36.         basePackage:指定sql映射文件/接口所在的包(自動掃描)  
    37.     -->  
    38.     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">  
    39.         <property name="basePackage" value="com.lyt.mapper"></property>  
    40.         <property name="sqlSessionFactory" ref="sqlSessionFactory"></property>  
    41.     </bean>  
    42.   
    43.     <!--  
    44.         4. 事務管理 : DataSourceTransactionManager dataSource:引用上面定義的數據源  
    45.     -->  
    46.     <bean id="txManager"  
    47.         class="org.springframework.jdbc.datasource.DataSourceTransactionManager">  
    48.         <property name="dataSource" ref="dataSource"></property>  
    49.     </bean>  
    50.   
    51.     <!-- 5. 使用聲明式事務  
    52.          transaction-manager:引用上面定義的事務管理器  
    53.      -->  
    54.     <tx:annotation-driven transaction-manager="txManager" />  
    55.   
    56. </beans>  
    57. 8.mybatis配置文件【mybatis-config.xml】放在src目錄下

       

       

      1. <?xml version="1.0" encoding="UTF-8"?>  
      2. <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"   
      3. "http://mybatis.org/dtd/mybatis-3-config.dtd">  
      4. <configuration>  
      5.   
      6.     <!-- 實體類,簡稱 -設置別名 -->  
      7.     <typeAliases>  
      8.         <typeAlias alias="User" type="com.lyt.model.User" />  
      9.     </typeAliases>  
      10.     <!-- 實體接口映射資源 -->  
      11.     <!--  
      12.         說明:若是xxMapper.xml配置文件放在和xxMapper.java統一目錄下,mappers也能夠省略,由於org.mybatis.spring.mapper.MapperFactoryBean默認會去查找與xxMapper.java相同目錄和名稱的xxMapper.xml  
      13.     -->  
      14.     <mappers>  
      15.         <mapper resource="com/lyt/mapper/userMapper.xml" />  
      16.     </mappers>  
      17.   
      18. </configuration>   
      19. 配置log4j.propertiessql

         

        1. ### set log levels ###   
        2. log4j.rootLogger = info , Console , D  
        3. #Console  
        4. log4j.appender.Console=org.apache.log4j.ConsoleAppender  
        5. log4j.appender.Console.layout=org.apache.log4j.PatternLayout  
        6. log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n  
        7. log4j.logger.java.sql.ResultSet=INFO  
        8. log4j.logger.org.apache=INFO  
        9. log4j.logger.java.sql.Connection=INFO  
        10. log4j.logger.java.sql.Statement=INFO  
        11. log4j.logger.java.sql.PreparedStatement=INFO  
        12. #output2file  
        13. log4j.appender.D = org.apache.log4j.DailyRollingFileAppender   
        14. log4j.appender.D.File = D\:/logs/log.log   
        15. log4j.appender.D.Append = true   
        16. log4j.appender.D.Threshold = INFO \#\# \u00E8\u00BE\u0093\u00E5\u0087\u00BAinfo\u00E7\u00BA\u00A7\u00E5\u0088\u00AB\u00E4\u00BB\u00A5\u00E4\u00B8\u008A\u00E7\u009A\u0084\u00E6\u0097\u00A5\u00E5\u00BF\u0097   
        17. log4j.appender.D.layout = org.apache.log4j.PatternLayout   
        18. log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH\:mm\:ss} [ %t\:%r ] - [ %p ] %m%n   
        19.    

         

        10.整合Springmvc

        配置【spring-mvc.xml】放在src根目錄下

         

        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" xmlns:context="http://www.springframework.org/schema/context"  
        4.     xmlns:mvc="http://www.springframework.org/schema/mvc"  
        5.     xsi:schemaLocation="http://www.springframework.org/schema/beans   
        6.     http://www.springframework.org/schema/beans/spring-beans.xsd  
        7.     http://www.springframework.org/schema/context  
        8.     http://www.springframework.org/schema/context/spring-context-4.0.xsd  
        9.     http://www.springframework.org/schema/mvc  
        10.     http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">  
        11.   
        12.     <!-- 註解掃描包 -->  
        13.     <context:component-scan base-package="com.lyt.controller" />  
        14.     <context:component-scan base-package="com.lyt.service" />  
        15.   
        16.     <!-- 開啓註解 -->  
        17.     <mvc:annotation-driven />  
        18.   
        19.     <!--  
        20.         配置靜態資源,直接映射到對應的文件夾,不被DispatcherServlet處理,3.04新增功能,須要從新設置spring-mvc-3.0.xsd  
        21.     -->  
        22.     <mvc:resources mapping="/img/**" location="/img/" />  
        23.     <mvc:resources mapping="/js/**" location="/js/" />  
        24.     <mvc:resources mapping="/css/**" location="/css/" />  
        25.     <mvc:resources mapping="/html/**" location="/html/" />  
        26.   
        27.   
        28.   
        29.     <!-- 定義跳轉的文件的先後綴 ,視圖模式配置-->  
        30.     <bean id="viewResolver"  
        31.         class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
        32.         <!-- 這裏的配置個人理解是自動給後面action的方法return的字符串加上前綴和後綴,變成一個 可用的url地址 -->  
        33.         <property name="prefix" value="/WEB-INF/jsp/" />  
        34.         <property name="suffix" value=".jsp" />  
        35.     </bean>  
        36. </beans>  
        37. 11.配置web.xml

           

           

          1. <?xml version="1.0" encoding="UTF-8"?>  
          2. <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"  
          3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
          4.     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
          5.     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  
          6.   
          7.     <!-- 加載Spring容器配置 -->  
          8.     <listener>  
          9.         <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>  
          10.     </listener>  
          11.   
          12.     <!-- 設置Spring容器加載全部的配置文件的路徑 -->  
          13.     <context-param>  
          14.         <param-name>contextConfigLocation</param-name>  
          15.         <!-- <param-value>classpath:config/spring-*.xml</param-value> -->  
          16.         <param-value>classpath:spring-common.xml,classpath:spring-mvc.xml</param-value>  
          17.           
          18.     </context-param>  
          19.   
          20.     <!-- 配置SpringMVC核心控制器 -->  
          21.     <servlet>  
          22.         <servlet-name>springMVC</servlet-name>  
          23.         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
          24.         <!-- 配置初始配置化文件,前面contextConfigLocation看狀況二選一 -->    
          25.         <init-param>  
          26.             <param-name>contextConfigLocation</param-name>  
          27.             <param-value>classpath:spring-common.xml,classpath:spring-mvc.xml</param-value>  
          28.         </init-param>  
          29.         <!-- 啓動加載一次 -->    
          30.         <load-on-startup>1</load-on-startup>  
          31.     </servlet>  
          32.   
          33.     <!--爲DispatcherServlet創建映射 -->  
          34.     <servlet-mapping>  
          35.         <servlet-name>springMVC</servlet-name>  
          36.         <!-- 此處能夠能夠配置成*.do,對應struts的後綴習慣 -->  
          37.         <url-pattern>/</url-pattern>  
          38.     </servlet-mapping>  
          39.   
          40.     <!-- 防止Spring內存溢出監聽器 -->  
          41.     <listener>  
          42.         <listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>  
          43.     </listener>  
          44.   
          45.     <!-- 解決工程編碼過濾器 -->  
          46.     <filter>  
          47.         <filter-name>encodingFilter</filter-name>  
          48.         <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>  
          49.         <init-param>  
          50.             <param-name>encoding</param-name>  
          51.             <param-value>UTF-8</param-value>  
          52.         </init-param>  
          53.         <init-param>  
          54.             <param-name>forceEncoding</param-name>  
          55.             <param-value>true</param-value>  
          56.         </init-param>  
          57.     </filter>  
          58.       
          59.     <filter-mapping>  
          60.         <filter-name>encodingFilter</filter-name>  
          61.         <url-pattern>/*</url-pattern>  
          62.     </filter-mapping>  
          63.   
          64.     <welcome-file-list>  
          65.         <welcome-file>index.jsp</welcome-file>  
          66.     </welcome-file-list>  
          67. </web-app>  
          68. 12.創建service以及service實現【UserService.java】

             

             

            1. package com.lyt.service;  
            2.   
            3. import java.util.List;  
            4.   
            5. import com.lyt.model.User;  
            6.   
            7. public interface UserService {  
            8.     void save(User user);  
            9.     boolean update(User user);  
            10.     boolean delete(int id);  
            11.     User findById(int id);  
            12.     List<User> findAll();  
            13. }  


             

            【UserServiceImpl.java】

             

            1. package com.lyt.service.impl;  
            2.   
            3. import java.util.List;  
            4.   
            5. import javax.annotation.Resource;  
            6.   
            7. import org.springframework.stereotype.Service;  
            8. import org.springframework.transaction.annotation.Transactional;  
            9.   
            10. import com.lyt.mapper.UserMapper;  
            11. import com.lyt.model.User;  
            12. import com.lyt.service.UserService;  
            13.  
            14. @Service  
            15. @Transactional  
            16. // 此處再也不進行建立SqlSession和提交事務,都已交由spring去管理了。  
            17. public class UserServiceImpl implements UserService {  
            18.  
            19.     @Resource  
            20.     private UserMapper mapper;  
            21.   
            22.     /**  
            23.      * 根據  id  刪除 數據  
            24.      */  
            25.     public boolean delete(int id) {  
            26.         return mapper.delete(id);  
            27.     }  
            28.     /**  
            29.      * 查詢User的所有數據  
            30.      */  
            31.     public List<User> findAll() {  
            32.         List<User> findAllList = mapper.findAll();  
            33.         return findAllList;  
            34.     }  
            35.     /**  
            36.      * 根據 id 查詢 對應數據  
            37.      */  
            38.     public User findById(int id) {  
            39.         User user = mapper.findById(id);  
            40.         return user;  
            41.     }  
            42.     /**  
            43.      * 新增數據  
            44.      */  
            45.     public void save(User user) {  
            46.         mapper.save(user);  
            47.     }  
            48.     /**  
            49.      * 根據 id 修改對應數據  
            50.      */  
            51.     public boolean update(User user) {  
            52.         return mapper.update(user);  
            53.     }  
            54.   
            55. }  

            13.創建Controller【UserController.java】

             

            1. <span style="font-size:14px;">package com.lyt.controller;  
            2.   
            3. import java.io.IOException;  
            4. import java.io.PrintWriter;  
            5. import java.util.List;  
            6.   
            7. import javax.servlet.http.HttpServletRequest;  
            8. import javax.servlet.http.HttpServletResponse;  
            9.   
            10. import org.springframework.beans.factory.annotation.Autowired;  
            11. import org.springframework.stereotype.Controller;  
            12. import org.springframework.ui.Model;  
            13. import org.springframework.web.bind.annotation.RequestMapping;  
            14.   
            15. import com.lyt.model.User;  
            16. import com.lyt.service.UserService;  
            17.  
            18. @Controller  
            19. @RequestMapping("/user")  
            20. public class UserController {  
            21.     @Autowired  
            22.     private UserService userService;  
            23.     /**  
            24.      * 獲取全部用戶列表  
            25.      * @param request  
            26.      * @return  
            27.      */  
            28.     @RequestMapping("/getAllUser")  
            29.     public String getAllUser(HttpServletRequest request,Model model){  
            30.         List<User> user = userService.findAll();  
            31.         model.addAttribute("userList", user);  
            32.         request.setAttribute("userList", user);  
            33.         return "/allUser";  
            34.     }  
            35.     /**  
            36.      * 跳轉到添加用戶界面  
            37.      * @param request  
            38.      * @return  
            39.      */  
            40.     @RequestMapping("/toAddUser")  
            41.     public String toAddUser(){  
            42.         return "/addUser";  
            43.     }  
            44.     /**  
            45.      * 添加用戶並重定向  
            46.      * @param user  
            47.      * @param request  
            48.      * @return  
            49.      */  
            50.     @RequestMapping("/addUser")  
            51.     public String addUser(User user,Model model){  
            52.         userService.save(user);  
            53.         return "redirect:/user/getAllUser";  
            54.     }  
            55.     /**  
            56.      *編輯用戶  
            57.      * @param user  
            58.      * @param request  
            59.      * @return  
            60.      */  
            61.     @RequestMapping("/updateUser")  
            62.     public String updateUser(User user,HttpServletRequest request,Model model){  
            63.         if(userService.update(user)){  
            64.             user = userService.findById(user.getId());  
            65.             request.setAttribute("user", user);  
            66.             model.addAttribute("user", user);  
            67.             return "redirect:/user/getAllUser";  
            68.         }else{  
            69.             return "/error";  
            70.         }  
            71.     }  
            72.     /**  
            73.      * 根據id查詢單個用戶  
            74.      * @param id  
            75.      * @param request  
            76.      * @return  
            77.      */  
            78.     @RequestMapping("/getUser")  
            79.     public String getUser(int id,HttpServletRequest request,Model model){  
            80.         request.setAttribute("user", userService.findById(id));  
            81.         model.addAttribute("user", userService.findById(id));  
            82.         return "/editUser";  
            83.     }  
            84.     /**  
            85.      * 刪除用戶  
            86.      * @param id  
            87.      * @param request  
            88.      * @param response  
            89.      */  
            90.     @RequestMapping("/delUser")  
            91.     public void delUser(int id,HttpServletRequest request,HttpServletResponse response){  
            92.         String result = "{\"result\":\"error\"}";  
            93.         if(userService.delete(id)){  
            94.             result = "{\"result\":\"success\"}";  
            95.         }  
            96.         response.setContentType("application/json");  
            97.         try {  
            98.             PrintWriter out = response.getWriter();  
            99.             out.write(result);  
            100.         } catch (IOException e) {  
            101.             e.printStackTrace();  
            102.         }  
            103.     }  
            104. }  
            105. </span>  



             

             

            至此 大部分架構以及代碼已經搭建完成

            咱們來作前臺頁面--修改index.jsp

             

            1. <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>  
            2. <%  
            3.     String path = request.getContextPath();  
            4.     String basePath = request.getScheme() + "://"  
            5.             + request.getServerName() + ":" + request.getServerPort()  
            6.             + path + "/";  
            7. %>  
            8.   
            9. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
            10. <html>  
            11. <head>  
            12. <base href="<%=basePath%>">  
            13. <title>首頁</title>  
            14. </head>  
            15. <body>  
            16.     <h5>  
            17.         <a href="<%=basePath%>user/getAllUser">進入用戶管理頁</a>  
            18.     </h5>  
            19. </body>  
            20. </html>  


            在 WEB-INF 下新建jsp文件夾【裏面新建如下文件】【addUser.jsp】【allUser.jsp】【editUser.jsp】

             

            addUser.jsp內容

             

            1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>  
            2. <%  
            3. String path = request.getContextPath();  
            4. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
            5. %>  
            6. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>    
            7. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
            8. <html>  
            9.   <head>  
            10.     <base href="<%=basePath%>">  
            11.       
            12.     <title>添加用戶</title>  
            13.       
            14.     <script type="text/javascript">  
            15.     function addUser(){  
            16.         var form = document.forms[0];  
            17.         form.action = "<%=basePath%>user/addUser";  
            18.         form.method="post";  
            19.         form.submit();  
            20.     }  
            21. </script>  
            22.   
            23.   </head>  
            24.     
            25.   <body>  
            26.     <h1><%=path%>添加用戶<%=basePath%></h1>  
            27.     <form action="" name="userForm">  
            28.         姓名:<input type="text" name="userName">  
            29.         年齡:<input type="text" name="age">  
            30.         <input type="button" value="添加" onclick="addUser()">  
            31.     </form>  
            32.   </body>  
            33. </html>  


            allUser.jsp

             

             

            1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>  
            2. <%  
            3. String path = request.getContextPath();  
            4. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
            5. %>  
            6. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>    
            7. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
            8. <html>  
            9.   <head>  
            10.     <base href="<%=basePath%>">  
            11.     <script type="text/javascript" src="js/jquery-1.7.1.js"></script>  
            12.     <title>用戶列表</title>  
            13.       
            14.     <script type="text/javascript">  
            15.     function del(id){  
            16.         $.get("<%=basePath%>user/delUser?id=" + id,function(data){  
            17.             if("success" == data.result){  
            18.                 alert("刪除成功");  
            19.                 window.location.reload();  
            20.             }else{  
            21.                 alert("刪除失敗");  
            22.             }  
            23.         });  
            24.     }  
            25. </script>  
            26.   </head>  
            27.     
            28.   <body>  
            29.     <h6><a href="<%=basePath%>user/toAddUser">添加用戶</a></h6>  
            30.     <table border="1">  
            31.         <tbody>  
            32.             <tr>  
            33.                 <th>姓名</th>  
            34.                 <th>年齡</th>  
            35.                 <th>操做</th>  
            36.             </tr>  
            37.             <c:if test="${!empty userList }">  
            38.                 <c:forEach items="${userList}" var="user">  
            39.                     <tr>  
            40.                         <td>${user.userName }</td>  
            41.                         <td>${user.age }</td>  
            42.                         <td>  
            43.                             <a href="<%=basePath%>user/getUser?id=${user.id}">編輯</a>  
            44.                             <a href="javascript:del('${user.id }')">刪除</a>  
            45.                         </td>  
            46.                     </tr>               
            47.                 </c:forEach>  
            48.             </c:if>  
            49.         </tbody>  
            50.     </table>  
            51.   </body>  
            52. </html>  


            editUser.jsp

             

             

            1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>  
            2. <%  
            3. String path = request.getContextPath();  
            4. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
            5. %>  
            6. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>    
            7. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
            8. <html>  
            9.   <head>  
            10.     <base href="<%=basePath%>">  
            11.       
            12.     <title>編輯用戶</title>  
            13.       
            14.     <script type="text/javascript">  
            15.     function updateUser(){  
            16.         var form = document.forms[0];  
            17.         form.action = "<%=basePath%>user/updateUser";  
            18.         form.method="post";  
            19.         form.submit();  
            20.     }  
            21. </script>  
            22.   
            23.   </head>  
            24.     
            25.   <body>  
            26.     <h1>添加用戶</h1>  
            27.     <form action="" name="userForm">  
            28.         <input type="hidden" name="id" value="${user.id }"/>  
            29.         姓名:<input type="text" name="userName" value="${user.userName }"/>  
            30.         年齡:<input type="text" name="age" value="${user.age }"/>  
            31.         <input type="button" value="編輯" onclick="updateUser()"/>  
            32.     </form>  
            33.   </body>  
            34.     
            35. </html>  


            到此 簡單的整合SSM 【基本的操做內容已經完成】

             

            讓大家看下界面運行,地址:http://localhost:8088/SpringMVC_Spring_mybatis/

            首頁:

            點擊編輯進去:

            點擊添加進去:

            因爲我在網絡問題  圖片暫時沒有上傳上去。【如今我吧圖片都正上去了,但願多多支持】
            對應的數據庫 表
            1. /*  
            2. Navicat MySQL Data Transfer  
            3.   
            4. Source Server         : localhost  
            5. Source Server Version : 50515  
            6. Source Host           : localhost:3306  
            7. Source Database       : db_zsl  
            8.   
            9. Target Server Type    : MYSQL  
            10. Target Server Version : 50515  
            11. File Encoding         : 65001  
            12.   
            13. Date: 2016-05-16 16:10:51  
            14. */  
            15.   
            16. SET FOREIGN_KEY_CHECKS=0;  
            17. -- ----------------------------  
            18. -- Table structure for `t_user`  
            19. -- ----------------------------  
            20. DROP TABLE IF EXISTS `t_user`;  
            21. CREATE TABLE `t_user` (  
            22.   `user_id` int(11) NOT NULL AUTO_INCREMENT,  
            23.   `user_name` varchar(20) NOT NULL,  
            24.   `user_age` varchar(20) NOT NULL,  
            25.   PRIMARY KEY (`user_id`)  
            26. ) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;  
            27.   
            28. -- ----------------------------  
            29. -- Records of t_user  
            30. -- ----------------------------  
            31. INSERT INTO `t_user` VALUES ('2', '朱佳鵬', '25');  
            32. INSERT INTO `t_user` VALUES ('3', '傻狍子', '150');  
            33. INSERT INTO `t_user` VALUES ('4', 'jiuqiyuliang', '23');  
            34. INSERT INTO `t_user` VALUES ('5', 'jiuqiyuliang', '23');  
            35. INSERT INTO `t_user` VALUES ('6', 'jiuqiyuliang', '23');  
            36. INSERT INTO `t_user` VALUES ('7', 'jiuqiyuliang', '23');  
            37. INSERT INTO `t_user` VALUES ('9', 'liyintao123', '23123');  
            38.   
            39. -- ----------------------------  
            40. -- Table structure for `user_t`  
            41. -- ----------------------------  
            42. DROP TABLE IF EXISTS `user_t`;  
            43. CREATE TABLE `user_t` (  
            44.   `id` int(11) NOT NULL AUTO_INCREMENT,  
            45.   `user_name` varchar(40) NOT NULL,  
            46.   `password` varchar(255) NOT NULL,  
            47.   `age` int(4) NOT NULL,  
            48.   PRIMARY KEY (`id`)  
            49. ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;  
            50.   
            51. -- ----------------------------  
            52. -- Records of user_t  
            53. -- ----------------------------  
            54. INSERT INTO `user_t` VALUES ('1', '測試', 'sfasgfaf', '24');  
相關文章
相關標籤/搜索