spring mvc+Mybatis+bootstrap简单应用

本文介绍了一个使用Spring MVC、Mybatis和Bootstrap构建的简单Web应用示例,涵盖了User表的增删改查功能。项目中,前端使用JSP和少量js/jQuery,CSS采用Bootstrap。后端涉及Spring MVC控制器、Mybatis接口及Mapper配置,以及数据库操作的封装。此外,还提供了配置文件、Java代码和JSP界面的概述。
摘要由CSDN通过智能技术生成

    实现一个spring mvc结合Mybatis的简单示例,前端的界面主要是JSP,包含了少量的js和jQuery等内容,css渲染则使用了bootstrap。当然,整体来说还是很简单的一个demo。

    这个项目,主要是实现了对于数据库中User表的增删改查功能,放在界面也就是登录、注册、修改个人信息和删除用户。

    关于spring MVC的内容,可以参照我的前几篇博客,主要都是简单的示例。关于mybatis,可以去看http://download.csdn.net/detail/tan1912224958/8535731 这个资料,里面讲解得非常详细,很适合初学者学习。

    嗯,下面spring MVC和mybatis整合示例的各个部分。

    PS:博主使用的环境为eclipse for Java web developers,创建的是Dynamic Web Project。使用的所有包参照链接:【http://download.csdn.net/detail/qq_28379809/9923026。】

    可能少了一个SQL连接的jar包,如果运行失败的话,参照下面的免费下载链接:http://download.csdn.net/detail/orzma/4828533

一、配置文件,一共是四个,两个是spring mvc的,两个是Mybatis的,这里没有关联。

  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_3_0.xsd"
	id="WebApp_ID" version="3.0">
	<!-- 解决中文乱码问题 -->
	<filter>
		<filter-name>CharacterEncodingFilter</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>
		<init-param>
			<param-name>forceEncoding</param-name>
			<param-value>true</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>CharacterEncodingFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
	<servlet>
		<servlet-name>springmvc</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>springmvc</servlet-name>
		<url-pattern>/</url-pattern>
	</servlet-mapping>
</web-app>
  springmvc-servlet.xml,这个主要是dispatcher.

<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns:beans="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
	xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:p="http://www.springframework.org/schema/p"
	xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd "
		default-autowire="byName">
	<mvc:annotation-driven />
	<!-- ①:对web包中的所有类进行扫描,以完成Bean创建和自动依赖注入的功能 -->
	<context:component-scan base-package="net.use" />

	<!-- 这两个类用来启动基于Spring MVC的注解功能,将控制器与方法映射加入到容器中 -->
	<beans:bean
		class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" />
	<beans:bean
		class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />

	<!-- 这个类用于Spring MVC视图解析 -->
	<beans:bean id="viewResolver"
		class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<beans:property name="prefix" value="/WEB-INF/pages/" />
		<beans:property name="suffix" value=".jsp" />
	</beans:bean>
	
</beans:beans>

User.xml,这个xml文件其实是关于sql操作的配置文件,里面定义了几个对于数据库操作的方法。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" 
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<!-- <mapper namespace="com.yihaomen.mybatis.models.UserMapper"> -->
<mapper namespace="net.use.inter.IUserOperation">
   
   <!--执行增加操作的SQL语句。id和parameterType分别与IUserOperation接口中的addUser方法的名字和参数类型一致。
          以#{name}的形式引用Student参数的name属性,MyBatis将使用反射读取Student参数的此
          属性。#{name}中name大小写敏感。引用其他 的gender等属性与此一致。seGeneratedKeys设置 为"true"表明
          要MyBatis获取由数据库自动生成的主键;keyProperty="id"指定把获取到的主键值注入 到Student的id属性--> 
   <insert id="addUser" parameterType="User" useGeneratedKeys="true" keyProperty="id"> 
      insert into user(name,age,address,pwd) values(#{name},#{age},#{address},#{pwd})
   </insert>
   
   
      <!-- 为了返回list 类型而定义的returnMap --> 
   <resultMap type="User" id="resultListUser"> 
      <id column="id" property="id" /> 
      <result column="name" property="name" /> 
      <result column="age" property="age" /> 
      <result column="address" property="address" /> 
      <result column="pwd" property="pwd" /> 
   </resultMap>
   
   <!-- 多参数传入参照博客:http://www.cnblogs.com/mingyue1818/p/3714162.html --> 
   <select id="selectUsers" resultMap="resultListUser"> 
      select * from user where name =#{arg0} and pwd =#{arg1}  
   </select>
   
   <!-- delete user from the database -->
   <delete id="deleteUser">
     delete from user where name =#{arg0} and pwd =#{arg1}  
   </delete>
   
   <!-- first find the id of the user,and then change it -->
   <update id="updateUser" parameterType="User" > 
      update user set name=#{name},age=#{age},address=#{address},pwd=#{pwd} where id=#{id} 
   </update>
   
   <select id="findUserByID" parameterType="int" resultType="User">
      select * from `user` where id = #{id} 
   </select> 
   
</mapper>


Configuration.xml,这个是mybatis的实际配置文件,配置数据库的类型、访问、用户密码,以及mapper等。这里的mapper就是指上面的user.xml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 
"http://mybatis.org/dtd/mybatis-3-config.dtd"> 
<configuration> 
   <typeAliases> 
      <typeAlias alias="User" type="net.use.info.User"/> 
   </typeAliases> 
   
   <environments default="development"> 
      <environment id="development"> 
      <transactionManager type="JDBC"/> 
         <dataSource type="POOLED"> 
         <property name="driver" value="com.mysql.jdbc.Driver"/> 
         <property name="url" value="jdbc:mysql://127.0.0.1:3306/mybatis" /> 
         <property name="username" value="root"/> 
         <property name="password" value="19961006"/> 
         </dataSource> 
      </environment> 
   </environments> 
   
   <mappers> 
      <mapper resource="net/use/mapper/User.xml"/> 
   </mappers> 
</configuration>

二、Java部分

UserController.java,spring MVC的控制器,也就是浏览器请求提交后的实际执行者,根据上面的配置文件,所有的浏览器请求都会被提交到这个Controller中,然后根据不同的URL由不同的方法执行。

其中,这些方法主要包含了两大类,一种是跳转界面的,也就是打开某个界面,第二种就是处理请求的,会调用mybatis的mapper里定义的方法来执行SQL操作,从数据库取出或更新某些内容。

package net.use.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;


import net.use.form.UserForm;
import net.use.info.User;
import net.use.mapper.SessionFactory;

@Controller
public class UserController {

	@RequestMapping("")
	public String index(Model model) {
		return "login";//
	}
	
	@RequestMapping("toLogin")
	public String toLo(Model model) {
		return "login";//
	}
	
	@RequestMapping("toRegister")
	public String toRe() {
		return "register";
	}
	
	@RequestMapping("toUpdate")
	public String toUp() {
		return "update";
	}
	
	@RequestMapping("toDelete")
	public String toDe() {
		return "delete";
	}
	
	
	/*
	@RequestMapping(value="/detail")
	public String detail(@ModelAttribute("form") UserForm userForm,Model model) {
		SessionFactory sessionFactory = new SessionFactory();
	    User user = sessionFactory.getUser(userForm.getName(),userForm.getPwd());
	    model.addAttribute("user",user);
		return "detail
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值