搭建SpringMVC+Spring+MyBatis简要过程
来源:互联网 发布:鹰视眼监控软件app 编辑:程序博客网 时间:2024/06/05 18:07
准备搭建一个个人网站,由于以前没搭建过SSM框架,上一间公司虽然使用Struts2+Spring+MyBatis,但是基本上是在框架之上写业务,对几大传统的框架理解还是很浅,而现在工作的公司使用的是Play框架,有别于SSM这类框架,是一种非常轻量级的框架。本来有打算用play的,但是考虑一些ssm太久没使用过了,这次就顺便当练手吧。
不打算去记录搭建的每一个步骤,因为这类型的文章实在太多了。基本上网上的资源是完全且轻松地搭建出来的。何况我也仅仅是跟着他们的指引(ctrl+c)搭出来的。还没搭建的时候觉得应该是挺简单的,但是实际搭建的时候还是遇到不少烦人的小问题。所以特意记录下来。文章最底有项目源码
简要步骤:
一、Maven搭建:
Maven管理项目有很多优点,目前对于我来说最方便的功能是不用自己手动导入jar包,直接在pom.xml文件描述,它会自动从网上下载导入。
下载maven包解压配置环境,修改配置文件。关联eclipse
网上的详细教程
项目结构:
二、SpringMVC:
springMVC的controller与Struts2不一样,Struts2的访问路径一般方式(可以修改)是 url/项目名/类!方法, 而springMVC则是使用注解方法定义路径:
@Controller //声明自己是一个controllerpublic class UserController { @Resource public UserService userService; @RequestMapping("/hello") //访问路径 127.0.0.1/项目名/hello public String test() { User user = new User(); user.setId(3); user.setUsername("hello"); user.setPassword("oksai"); userService.insert(user); return "/index"; //它会返回 index.jsp }}
使用SpringMVC需要在web.xml配置DispatcherServlet以及拦截路径
web.xml
<servlet> <servlet-name>SpringMVC</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath*:SpringMVC-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> //所有访问都必须经过DispatcherServlet <servlet-mapping> <servlet-name>SpringMVC</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
SpringMVC-servlet.xml(这个文件名是可以自定义的,在web.xml里定义)
<!-- 设置使用注解的类所在的jar包 --> <context:component-scan base-package="com.blogs.controllers" /> <!-- 开启注解模式驱动 --> <mvc:annotation-driven></mvc:annotation-driven> <!-- 扫包 --> <context:component-scan base-package="com.springmvc.*"></context:component-scan> <!-- 静态资源过滤 --> <mvc:resources location="/resources/" mapping="/resources/**"/> <!-- 视图渲染 jsp/freemaker/velocity--> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <!-- 制定页面(jsp)存放的路径--> <property name="prefix" value="/WEB-INF"></property> <!-- 文件的后缀 Controller返回的字符串会自动加上".jsp"后缀--> <property name="suffix" value=".jsp"></property> </bean>
基本上配置SpringMVC就是这样的流程:配置web.xml,配置SpringMVC-servlet,创建Controller,注解声明。
三、Spring
Spring有依赖注入和面向切面两大特点。依赖注入不需要开发者手动的创建对象(new),只需要在Application.xml中声明
Application.xml是Spring的核心配置文件,可以配置数据库、事务、日志、与其它框架搭配使用等核心基础功能。是SSM项目的核心文件。
//autowire属性声明注入的几种方式:默认(手动关联)、名字、类型,<bean id="userService" class="com.blogs.service.impl.UserServiceImpl" autowire="byName"/>
同时需要在web.xml里面声明监听器ContextLoaderListener,(Spring的入口)
<context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath*:applicationContext*.xml</param-value> <!-- 默认是/WEB-INF/applicationContext.xml --> </context-param> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener>
四、MyBatis:
Application.xml文件
<!-- spring配置MyBatis,不再需要配置mybatis的映射文件,注入SqlSessionFactoryBean--> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean" autowire="byName"> <property name="dataSource" ref="dataSource" /> <!-- 自动扫描mapping.xml文件 --> <property name="mapperLocations" value="classpath:com.blogs.mapper.*.xml"></property> </bean>
//数据库驱动jar包别忘了
@Repositorypublic class UserDaoImpl implements UserMapper { @Resource SqlSessionFactory sqlSessionFactory; private SqlSession getSession() { return sqlSessionFactory.openSession(); } public int insert(User record) { return getSession().insert("com.blogs.mapper.UserMapper.insert", record); }}
UserMapper.xml
<?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路径一致 --><mapper namespace="com.blogs.mapper.UserMapper"> <insert id="insert" parameterType="com.blogs.model.User"> insert into user (id, userName, passWord ) values (#{id}, #{username}, #{password} ) </insert></mapper>
五、MyBatis-Generator工具
这个工具是能根据数据库的表自动生成最基础的mapper.xml和dao接口文件,使用方法非常的简单,在eclipse中,Help->eclipse MarketPlace,搜索 “MyBatis-Generator”,安装.重启eclipse。
创建一个generatorConfig.xml文件,网络上很多配置模板,直接复制就行,,我也是引用别人的详细教程
简单来说就是1.对应数据库驱动包、数据库url/账户/密码/数据表,生成的文件存放路径。
总结:网上有大量前人的教程,搭建基础框架是完全没难度的,唯一需要的就是细心、耐心,我在配置数据库数据的jdbc.properties文件时多了一个空格,报错了,找了半天一度想放弃,幸好网上也有前人遇到过同样的问题。站在巨人的肩膀上才能看得更远,不要一个人钻牛角尖,非常耗时间。多做笔记很重要
实习至今已经将近工作一年了,毕业四个月但是却感觉自己的技术提升非常的缓慢。一直在找提高学习效率的方法,碎片化知识的时代,知识零散,基本上各个领域的大牛都推荐 做笔记+写作。我也感觉到在写作的过程中很多脑海里是清晰的知识,再去用文字展示出来的时候逻辑表达很凌乱。
这篇文章比较零散,只是本人的学习笔记,如果需要系统的教程,可能不适合大家。另外文章用了网上其他人的资源和代码,有些是直接复制修改的,来源我自己也忘记了,如果文章的内容侵犯到您的版权请通知我。
项目源码
- 搭建SpringMVC+Spring+MyBatis简要过程
- 搭建SpringMVC+Spring+MyBatis过程
- SpringMVC+Spring+MyBatis搭建过程
- spring,springMVC,MyBatis,Junit 搭建过程
- SSM框架搭建详细过程,springmvc、spring、mybatis整合
- SSM框架(Spring+SpringMVC+MyBatis)详细搭建过程
- springMVC+mybatis+maven搭建过程
- springMVC+Spring+Mybatis框架搭建
- spring+springMVC+mybatis框架搭建
- Spring+SpringMVC+myBatis环境搭建
- Spring+mybatis+springMVC项目搭建
- Spring+SpringMVC+Mybatis框架搭建
- Spring+SpringMVC+MyBatis框架搭建
- springmvc+spring+mybatis框架搭建
- Spring+SpringMVC+Mybatis框架搭建
- dubbo+springMVC+Spring+Mybatis搭建
- 搭建Spring+SpringMVC+mybatis框架
- Spring+SpringMVC+Mybatis 一步一步搭建
- 笨方法学习Python-习题18: 命名、变量、代码、函数
- Andrew NG 机器学习 笔记-week7-支持向量机(Support Vector Machines)
- JAVA面向对象练习05第四种
- 《DOS命令一日通》第九章 文件备份的制作与恢复
- tomcat后台启动成功,但是前台服务器页面无法访问的问题
- 搭建SpringMVC+Spring+MyBatis简要过程
- L12 usermod命令,用户密码管理,mkpasswd命令
- 正整数分组
- 利用python GDAL库读写geotiff格式的遥感影像
- C++引用详解
- 软件工程实践探索
- 获取视频图像的信息
- 贪心算法
- ssh连接乱码