一、使用IntelliJ IDEA 创建Maven管理的JAVA Web项目
①新建项目,选择Maven Module
在本地磁盘用户的。.m2目录下生成settings文件:
Maven工程搭建完毕!!!
② 开发步骤:
自动从本地仓库下载Jar包:
4.0.0 cn.wj SpringMVC_SSM war 1.0-SNAPSHOT SpringMVC_SSM Maven Webapp http://maven.apache.org junit junit 3.8.1 test javaee javaee-api 5 org.springframework spring-core 4.2.2.RELEASE org.springframework spring-beans 4.2.2.RELEASE org.springframework spring-context 4.2.2.RELEASE org.springframework spring-tx 4.1.9.RELEASE org.springframework spring-aspects 4.2.1.RELEASE org.springframework spring-context-support 4.1.9.RELEASE org.springframework spring-jdbc 4.2.3.release org.springframework spring-test 4.1.9.RELEASE org.springframework spring-web 4.2.3.RELEASE org.springframework spring-webmvc 4.1.9.RELEASE org.mybatis mybatis 3.2.2 org.mybatis mybatis-spring 1.3.0 org.javassist javassist 3.17.1-GA cglib cglib 2.2.2 c3p0 c3p0 0.9.1.2 com.oracle ojdbc6 11.2.0.1.0 SpringMVC_SSM
③ 由于Maven对oracle数据库的不支持,我们需要将Oracle装载到本地仓库,
让Maven使用Oracle
1、配置Maven3.3.9 bin到环境变量
然后可以通过cmd命令行 mvn -version测试有没有测试成功!!!
2、定位到Oracle安装目录的jdbc文件夹
④搭建分层架构---实现添加学生
实体类UserInfo:
package cn.wj.entity;/** * Created by WJ on 2017/1/16. */public class UserInfo { private Integer id; private String name; private Integer age; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; }}
dao接口: 无需dao实现类,通过代理生成
public interface IUserInfoDao { public void add(UserInfo info);}
service层:
public interface IUserInfoService { public void add(UserInfo info);}
service实现类:
public class UserInfoServiceImpl implements IUserInfoService { private IUserInfoDao dao; public void add(UserInfo info) { dao.add(info); } public IUserInfoDao getDao() { return dao; } public void setDao(IUserInfoDao dao) { this.dao = dao; }}
控制器类:controller
public class UserInfoController implements Controller { private IUserInfoService service; public ModelAndView handleRequest(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception { String uname=httpServletRequest.getParameter("uname"); Integer uage=Integer.valueOf(httpServletRequest.getParameter("uage")); UserInfo info=new UserInfo(); info.setName(uname); info.setAge(uage); service.add(info); return new ModelAndView("/welcome.jsp"); } public IUserInfoService getService() { return service; } public void setService(IUserInfoService service) { this.service = service; }}
由于是整合MyBatis,需要书写核心配置文件:
小配置:UserInfoDao.xml:
MyBatis配置文件:mybatis-config.xml
applicationContext.xml:进行植入dao、service、controller、事务管理器、数据源、sessionFactory
index.jsp页面:
Web.xml:进行配置中央调度器
contextConfigLocation classpath:applicationContext.xml org.springframework.web.context.ContextLoaderListener springmvc org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath:applicationContext.xml 1 springmvc *.do CharacterEncodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding utf-8 forceEncoding true CharacterEncodingFilter /*
实现效果:
注:若出现此类异常--org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
解决方案:参见博客
http://www.cnblogs.com/jstarseven/p/5803697.html