SSM框架下的用户登录系统,并实现增删改

实现功能: 
(1)连接数据库,实现数据库中已存用户的成功登陆,或向数据库中添加未有的用户 
(2)在界面中显示数据库中所有人名单 
(3)管理员可以像数据库中添加用户,删除用户,修改用户 
(4)修改用户实现表单的预读 
(5)添加用户实现数据验证,并显示错误信息

相关实现: 
(1)整体框架: 
这里写图片描述

(2)web,xml配置文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">

  <servlet>
    <servlet-name>spring</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>spring</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>

</web-app>
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

(3)spring-servlet.xml文件

<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="
    http://www.springframework.org/schema/mvc
    http://www.springframework.org/schema/mvc/spring-mvc.xsd
    http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context.xsd">

    <!-- 打开基于注解的spring handler mapping -->
    <mvc:annotation-driven />
    <!-- 配置spring自动扫描所有的controller -->
    <context:component-scan base-package="com.controller"></context:component-scan>

    <!-- 配置spring mvc controller和view的映射关系 以及告知spring要使用jstl -->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
        <property name="prefix" value="/WEB-INF/jsp/"></property>
        <property name="suffix" value=".jsp"></property>
    </bean>

    <!-- spring配置全局异常的处理 -->
    <bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
        <property name="exceptionMappings">
            <props>
                <prop key="java.lang.RuntimeException">error</prop>
            </props>
        </property>
    </bean>

    <!-- 配置spring文件上传的 -->
    <bean id="multipartResolver"
        class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <!-- one of the properties available; the maximum file size in bytes -->
    <property name="maxUploadSize" value="20000000"/>
    </bean>

    <!-- spring上配置mybatis的集成 -->
    <!-- 配置加载数据连接资源文件的配置,把数据库连接数据抽取到一个properties资源文件中方便管理 -->
    <context:property-placeholder location="/WEB-INF/assets/jdbc.properties"/>

    <!-- 配置数据源   dbcp数据库连接池  可以配置初始连接数量,最大连接数量等等参数-->
    <bean id="dataSource" class="org.apache.tomcat.dbcp.dbcp.BasicDataSource" destroy-method="close">
        <property name="driverClassName" value="${jdbc.driver}"/>
        <property name="url" value="${jdbc.url}"/>
        <property name="username" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
        <!-- 初始化连接大小 -->
        <property name="initialSize" value="${jdbc.initialSize}"></property>
        <!-- 连接池最大数量 -->
        <property name="maxActive" value="${jdbc.maxActive}"></property>
    </bean>

    <!-- spring和MyBatis整合,mybatis配置映射文件 -->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource" />
        <!-- 自动扫描mapping.xml文件 -->
        <property name="mapperLocations" value="classpath:com/mapping/*.xml"></property>
    </bean>

    <!-- (事务管理)transaction manager, use JtaTransactionManager for global tx -->
    <bean id="transactionManager"
        class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="dataSource" />
    </bean>

    <!-- DAO接口所在包名,Spring会自动查找其下的类 -->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.dao" />
        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
    </bean>

    <!-- spring搜索service服务类的包路径 -->
    <context:component-scan base-package="com.service.impl"></context:component-scan>
   <mvc:resources mapping="/resource/**" location="/resource/" />
</beans>
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80

(4)添加用户中的数据验证 
UserController:

    @RequestMapping(value={"/add"}, method=RequestMethod.POST)
    public String add(@Validated User user, BindingResult result){
        //jsr303数据验证的结果必须放在被验证对象紧跟的后面,中间不能添加额外的参数
        if(result.hasErrors())
         {
            return "user/add";
        }
        if(!userService.saveUser(user)){
            throw new RuntimeException("xxxxxxx");
        }
        return "redirect:/user/users";
    }
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

实现:(当添加的部分不合法时,会有相应的报错) 
这里写图片描述

(5)修改用户时表单的预填 
jsp页面:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<div align="center">
 ${user.name }

 <fm:form method="post" modelAttribute="user">
    name:<fm:input path="name" /><fm:errors path="name" /><br/>
    pwd:<fm:input path="pwd" /><fm:errors path="pwd" /><br/>
    phone:<fm:input path="phone" /><fm:errors path="phone" /><br/>
    email:<fm:input path="email" /><fm:errors path="email" /><br/>
    <input type="submit" value="修改">    
</fm:form>
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

实现:(修改某用户时,相应的信息预填在相应的框中) 
这里写图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值