【Spring】SpringMVC+MySQL的配置

第一步:建立用户界面

login.jsp

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>login</title>
</head>
<body>
    <form action="login.do" method="post">
    <!--
        userName:<input type="text" name="userName"/><br/>
        passWord:<input type="password" name="userPwd"/><br/>
     -->
        <input type="submit" value="查询所有信息"/>
    </form>
</body>
</html>

这里也可以配合后面做成用户登录界面。

第二步:配置Web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
  <display-name>mydb2</display-name>
  <welcome-file-list>
    <welcome-file>welcome.html</welcome-file>
  </welcome-file-list>

  <!-- 这里是一个总控制器 -->
  <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>*.do</url-pattern>
  </servlet-mapping>

  <!-- 解决POST提交乱码问题 -->
  <filter>
    <filter-name>EncodingName</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>utf-8</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>EncodingName</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

</web-app>

第三步:配置dispatcher文件

spring-servlet.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.xsd">

  <!-- 获取配置文件 -->
  <bean id="config" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="locations">
      <list>
        <value>classpath:db-config.properties</value>
      </list>
  </property>
  </bean>

  <!-- 获取数据源 -->
  <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName">
      <value>${db.dirverClass}</value>
    </property>
    <property name="url">
      <value>${db.url}</value>
    </property>
    <property name="username">
      <value>${db.username}</value>
    </property>
    <property name="password">
      <value>${db.password}</value>
    </property>
  </bean>

  <!--
        给jdbc模板注入数据源
       在JdbcTemplate里有一个对应的私有属性dataSource
  -->
  <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
    <property name="dataSource" ref="dataSource"></property>
  </bean>

  <!--
         给userDao注入模板
        在com.spring.db.UserDao里应该设有一个JdbcTemplate jdbcTemplate的私有属性,并且setter
  -->
  <bean id="userDao" class="com.spring.db.UserDao">
    <property name="jdbcTemplate" ref="jdbcTemplate"></property>
  </bean>

  <!--
         给控制器注入dao类
        在com.spring.controller.LoginController里应该设有一个UserDao userDao的私有属性,并且setter
  -->
  <bean id="LoginController" class="com.spring.controller.LoginController">
    <property name="userDao" ref="userDao"></property>
  </bean>

  <!-- 配置映射响应器,映射响应器会根据请求文件来决定进入到哪个控制器,-->
  <bean id="mapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    <property name="mappings">
      <props>
        <!-- 这里的key就是你的action请求。后面的是要分派的控制器,控制器和是id对应的。-->
        <prop key="login.do">LoginController</prop>
      </props>
    </property>
  </bean>

  <!--定义视图 通过internalResourceView来表示 使用的是Servlet/jsp技术-->
  <bean id="viewResolver"    class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="viewClass">
      <value>org.springframework.web.servlet.view.InternalResourceView</value>
    </property>
    <!--jsp存放的目录-->
    <property name="prefix">
      <value>/view/</value>
    </property>
    <!--jsp文件的后缀-->
    <property name="suffix">
      <value>.jsp</value>
    </property>
  </bean>
</beans>

这儿控制MySQL的大致过程为,首先获得数据源,将数据源添加到JDBCTemplate模板,然后再将Jdbc模板添加到UserDao(负责和数据库交换)中,最后将UserDao添加到控制器中。

第四步:建立数据源文件

db-config.properties

db.url=jdbc:mysql:///test?characterEncoding=utf8&useSSL=true&serverTimezone=GMT
db.username=root
db.password=[email protected]
db.dirverClass=com.mysql.cj.jdbc.Driver

第五步:建立Model

UserVO.java

package com.spring.model;

public class UserVO {
    private int id;
    private String name;
    private String pwd;

    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPwd() {
        return pwd;
    }
    public void setPwd(String pwd) {
        this.pwd = pwd;
    }
}

第六步:建立dao类(和数据库交换),代码为:

package com.spring.db;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;

import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;

import com.spring.model.UserVO;

public class UserDao {
private JdbcTemplate jdbcTemplate;

public JdbcTemplate getJdbcTemplate() {
    return jdbcTemplate;
}

public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
    this.jdbcTemplate = jdbcTemplate;
}
    @SuppressWarnings({ "unchecked", "rawtypes" })
    public List<UserVO> find(){
        String sql="select * from userbo";//这里也可以添加查询限制条件
        return jdbcTemplate.query(sql, new RowMapper(){

            public Object mapRow(ResultSet rs, int num) throws SQLException {
                UserVO uservo=new UserVO();
                uservo.setId(rs.getInt("USERID"));
                uservo.setName(rs.getString("USERNAME"));
                uservo.setPwd(rs.getString("USERPSW"));
                return uservo;
            }
        });
    }
}

第七步:建立控制器:

LoginController.java

package com.spring.controller;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;

import com.spring.db.UserDao;
import com.spring.model.UserVO;

public class LoginController implements Controller {
    private UserDao userDao;
    @SuppressWarnings("unchecked")
    public ModelAndView handleRequest(HttpServletRequest request,
            HttpServletResponse response) throws Exception {

//        String name = request.getParameter("userName");
//        String psw = request.getParameter("userPwd");

        @SuppressWarnings("rawtypes")
        Map model=new HashMap();

        List<UserVO> userVO=userDao.find();

        model.put("uservo", userVO);

        return new ModelAndView("userInfo",model);
    }
    public void setUserDao(UserDao userDao) {
        this.userDao = userDao;
    }
    public UserDao getUserDao() {
        return userDao;
    }

}

第八步:视图界面代码

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@page import="com.spring.model.UserVO"%>
<%
@SuppressWarnings("unchecked")
/*
*这儿是合法的,根据com.spring.db.controller.LoginController中handleRequest的返回数据类型进行设置的。
*/
List<UserVO> str= (List<UserVO>)request.getAttribute("uservo");
%>

<html>
  <head>
    <title>result</title>
  </head>

  <body>
  <table border="1">
          <tr>
            <td >编号</td>
            <td >姓名</td>
            <td >年龄</td>
        </tr>
   <%
           for(UserVO user:str){
               %>
                   <tr>
                       <td><%=user.getId() %></td>
                       <td><%=user.getName() %></td>
                       <td><%=user.getPwd() %></td>
                   </tr>
               <%
           }
    %>
    </table>
  </body>
</html>

数据库信息

mysql> select * From userbo;
+-----------+---------------+--------------+
| USERID    | USERNAME      | USERPSW      |
+-----------+---------------+--------------+
| 1         | 李晓红         | 123456789    |
| 2         | 刘梦雨         | 1234         |
| 3         | 刘姐           | 134567       |
+-----------+---------------+--------------+

参考原文:

java spring mvc+mysql 整合写的一个简单的登录

时间: 2024-10-11 21:56:22

【Spring】SpringMVC+MySQL的配置的相关文章

idea spring+springmvc+mybatis环境配置整合详解

idea spring+springmvc+mybatis环境配置整合详解 1.配置整合前所需准备的环境: 1.1:jdk1.8 1.2:idea2017.1.5 1.3:Maven 3.5.2 2.查看idea中是否安装Maven插件: 2.1:File --> Settings --> Plugins 2.2:如下图所示的步骤进行操作(注:安装完插件,idea会重新启动) 3.idea创建Maven项目的步骤 4.搭建目录结构 下图就是我搭建Maven项目之后,添加对应的目录和文件 5.p

Spring+SpringMVC+Mybatis环境配置

文件目录展示 resouce目录展示 src目录展示 WebRoot目录展示 jdbc.propertise driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/hrm_db3?characterEncoding=UTF-8 username=root password=root #定义初始连接数 initialSize=0 #定义最大连接数 maxActive=20 #定义最大空闲 maxIdle=20 #定义最小空闲 mi

Spring+SpringMVC+MyBatis整合配置

前端控制器 web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="

Spring+SpringMVC+MyBatis框架的搭建

1,SSM的简介 SSM(Spring+SpringMVC+MyBatis)框架集由Spring.SpringMVC.MyBatis三个开源框架整合而成,常作为数据源较简单的web项目的框架. 其中spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架. SpringMVC分离了控制器.模型对象.分派器以及处理程序对象的角色,这种分离让它们更容易进行定制. MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架. 2,SSM的搭建 项目的结构如下: 首先配

spring+springmvc+mybatis构建系统

今天和大家分享的是spring+springmvc+mybatis搭建框架的例子,说到这里不得不说现在市面上一流大公司还有很多用这种架子,创业型公司大部分都用springboot集成的mvc+mybatis来构建应用,形成了两种“趋势”没有统一:因此在后面会有一章springboot+mybatis构建系统的文章,希望多多支持. mybatis-generator逆向工程生成实体和配置文件 spring+springmvc+mybatis一系列配置 访问静态资源的两种配置方式 引入事物注解 打成

SpringMVC +Spring + MyBatis + Mysql + Redis(作为二级缓存) 配置

转载:http://blog.csdn.net/xiadi934/article/details/50786293 项目环境: 在SpringMVC +Spring + MyBatis + MySQL.Redis部署在Linux虚拟机. 1.整体思路 参考Ehcache实现MyBatis二级缓存代码(Maven引用对应jar查阅) 使用Spring管理Redis连接池 模仿EhcacheCache,实现RedisCache 2.pom.xml中加入Maven依赖 1 <!-- spring-re

Spring+SpringMVC+Mybatis+Mysql整合实例【转】

本文要实现Spring+SpringMVC+Mybatis+Mysql的一个整合,实现了SpringMVC控制访问的页面,将得到的页面参数传递给Spring中的Mybatis的bean类,然后查找Mysql数据的功能,并通过JSP显示出来.建议可以先看笔者另一文章Mybatis与Spring整合创建Web项目 .笔者觉得整合过程中问题比较多的还是Spring+Mybatis的整合,SpringMVC的整合还是比较简单. Spring        Spring 是一个开源框架, Spring 是

spring,springmvc,mybatis基本整合(一)--xml文件配置方式(2)

spring,springmvc,mybatis基本整合(一)–xml文件配置方式(2)之mapper接口 一,整合结构 二,所需jar包 如上图. 三,整合配置 1,web.xml文件 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://j

springmvc学习总结(二) -- maven+springmvc+spring+mybatis+mysql详细搭建整合过程讲解

@[email protected] 写在最前 之前分享过下面这几篇: mybatis学习笔记(五) -- maven+spring+mybatis从零开始搭建整合详细过程(上)(附demo和搭建过程遇到的问题解决方法) mybatis学习笔记(六) -- maven+spring+mybatis从零开始搭建整合详细过程(下) springmvc学习笔记(一) -- 从零搭建,基础入门 这一篇,在这些练习的基础上,将它们整合在一起! 搭建步骤如下 一.新建maven项目,配置环境,测试是否配置成