博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IDEA环境下SSM整合------环境配置
阅读量:6295 次
发布时间:2019-06-22

本文共 18028 字,大约阅读时间需要 60 分钟。

声明:本文纯为个人笔记整理,如有不妥之处还望及时指出,欢迎转载! 

只为解决操作问题,可以从第二幅图往后看!

一、做不出详细的概念叙述和文本设计,本文主要以实战步骤为主,少量解释为辅助,下面请大家牢记两幅图:

截图来自张开涛博客

      典型的jsp(java server page)是一种服务器执行的组件,运行在标准HTML页面的java技术,最终还是被编译成服务器可以识别的servlet代码,生成.class文件,相比Servlet开发简洁、方便,缺点是视图显示、业务控制比较复杂,而且把对后端操作放在jsp页面很不安全;

      故产生了Jsp+JavaBean开发,使用<jsp:usebean>标签,自动将请求封装为javabean组件,可以认为是为了增强jsp开发;这也是单一的开发思路,即下图所示,这种模型同样是没有本子上解决问题,大量的业务处理依然在jsp页面中,而bean负责的只有参数的请求处理;所以出现了我们的MVC模型;

jsp+bean模型

MVC模型

在JvavEE的开发中,可以认为下图就是我们的web mvc模型

控制器用servlet、模型用JavaBean、视图采用Jsp

二、下面开始步入正题;

进行springmvc开发,写业务逻辑之前,首先要做到:

1.开发环境(jdk+IDE+maven+mysql)

2.配置环境(web.xml、pom.xml、application.xml、springmvc.xml、mybatis.xml)

3.定义domian、生成dao、mapper

按照上述步骤进行开发,便于在后期调错,另外 可以个那好的梳理业务逻辑,本文只介绍,文件配置到连接上数据库。

三、SpringMvc开发用到的通用配置文件

1.pom.xml这里粘贴一个详细的pom文件,包含各种依赖和maven常用的几个插件

4.0.0
Traing
springmvc
war
0.0.1-SNAPSHOT
springmvc
http://maven.apache.org
UTF-8
2.3
com.fasterxml.jackson.core
jackson-core
2.4.3
com.fasterxml.jackson.core
jackson-databind
2.4.3
org.hibernate
hibernate-validator
5.1.3.Final
javax.validation
validation-api
1.1.0.Final
org.jboss.logging
jboss-logging
3.1.1.GA
org.glassfish
bean-validator
3.0-JBoss-4.0.2
provided
org.glassfish
javax.enterprise.deploy
3.0.1
provided
org.glassfish
javax.jms
3.0.1
provided
org.glassfish
javax.management.j2ee
3.0.1
provided
org.eclipse.persistence
javax.persistence
2.0.0
provided
org.glassfish
javax.resource
3.0.1
provided
org.glassfish
javax.security.auth.message
3.0.1
provided
org.glassfish
javax.security.jacc
3.0.1
provided
org.glassfish
javax.servlet
3.0.1
provided
org.glassfish
javax.servlet.jsp
3.0.1
provided
org.glassfish
javax.servlet.jsp.jstl
3.0.1
provided
javax.xml.bind
jaxb-api-osgi
2.2.1
provided
javax.ws.rs
jsr311-api
1.1.1
provided
org.glassfish.web
jstl-impl
1.2
provided
javax.mail
mail
1.4.3
provided
javax.xml
webservices-api-osgi
2.0.1
provided
org.jboss.weld
weld-osgi-bundle
1.0.1-SP3
provided
org.glassfish.web
javax.servlet.jsp.jstl
1.2.1
mysql
mysql-connector-java
5.1.23
junit
junit
4.12
test
org.mybatis
mybatis
3.2.1
org.springframework
spring-context
3.2.18.RELEASE
org.springframework
spring-context-support
3.2.18.RELEASE
org.springframework
spring-test
3.2.18.RELEASE
test
org.springframework
spring-core
3.2.18.RELEASE
org.springframework
spring-web
3.2.18.RELEASE
org.springframework
spring-aop
3.2.18.RELEASE
aspectj
aspectjweaver
1.5.4
org.springframework
spring-tx
3.2.18.RELEASE
org.springframework
spring-jdbc
3.2.18.RELEASE
org.springframework
spring-orm
3.2.18.RELEASE
org.springframework
spring-webmvc
3.2.18.RELEASE
org.mybatis
mybatis-spring
1.3.1
org.mybatis.generator
mybatis-generator-core
1.3.3
jar
commons-dbcp
commons-dbcp
1.4
commons-pool
commons-pool
1.6
org.apache.poi
poi
3.17
commons-fileupload
commons-fileupload
1.3
commons-io
commons-io
2.6
com.mchange
mchange-commons-java
0.2.3.1
c3p0
c3p0
0.9.1.2
log4j
log4j
1.2.16
//打成jar时会自动打包依赖 
org.apache.maven.plugins
maven-resources-plugin
UTF-8
org.apache.maven.plugins
maven-compiler-plugin
1.7
1.7
UTF-8
org.apache.maven.plugins
maven-shade-plugin
1.4
true
package
shade
com.cmos.task.TaskManager
 

2.web.xml  需要注意其中两个配置文件 一个是application.xml :主要配置dataSource、dao、service等跟持久化相近的非webBean

一个是springmvc.xml:配置controller、handlerResolver视图解析器等web层组件

 

springmvc
/views/login.jsp
CharacterEncoding
org.springframework.web.filter.CharacterEncodingFilter
encoding
UTF-8
forceEncoding
true
CharacterEncoding
/*
dispatcher
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:/springmvc.xml
1
dispatcher
/
org.springframework.web.context.ContextLoaderListener
contextConfigLocation
classpath:/applicationContext.xml
HiddenHttpMethodFilter
org.springframework.web.filter.HiddenHttpMethodFilter
HiddenHttpMethodFilter
/*

3.application.xml由于我主要用的注解驱动开发,所以这个配置文件没有相关的dao、servic的bean配置、我将mybatis的配置单独写在Mybatis.xml文件里,但是不要忘记引入到这里。如果只有数据库配置的话,也可以直接写进来(不建议)

4.Mybatis.xml  注意db.properties文件中的内容username、password注意不要配置的太通用 有可能会和本机的配置冲突

db.properties文件中的内容
driverClassName=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/studentmanager?useUnicode=true&characterEncoding=UTF-8 jdbcUserName=root jdbcPassword=root
 
Mybatis.xml

5.SpringMVC.xml

 

error

 6.dao和mapper.xml  我这里只粘了一个dao和mapper的样例

  特别注意:

    1.dao参数类型和Mapper的参数类型严格对称

    2.mapper中的resultMap配置,前面是数据库字段名、后面是对应对象名,要严格一致

    3.不要在Mybtais.xml中引入dao和mapper的位置

package com.cmos.dao;import com.cmos.domain.District;import org.apache.ibatis.annotations.Param;import org.springframework.stereotype.Repository;import java.util.List;@Repositorypublic interface DistrictDao {    int deleteByPrimaryKey(Integer disId);    int insert(District record);    int updateByExample(@Param("example") District example);    List
selectAll();}Mapper.xml
delete from district where dis_id = #{disId,jdbcType=INTEGER}
insert into district (dis_id, dis_name) values (#{disId,jdbcType=INTEGER}, #{disName,jdbcType=VARCHAR})
update district set dis_name = #{example.disName,jdbcType=VARCHAR} where dis_id = #{example.disId,jdbcType=INTEGER}

  

 

我的博客即将同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=y5o4fpq222bt

你可能感兴趣的文章
《C语言程序设计:问题与求解方法》——1.4节本章习题
查看>>
交互式线上科学期刊Distill上线,Ian Goodfellow表示“学ML就找它”
查看>>
区块链:这项颠覆性技术将如何改变未来
查看>>
新致云产品运营的那些小事
查看>>
分析师洞察:边缘数据中心的UPS系统
查看>>
微软修复20多年的老漏洞:Win95时就存在了
查看>>
58回应“简历数据泄露”:将展开追查并加固安全系统
查看>>
大数据如何重构影视行业产业链
查看>>
MaxCompute(原ODPS) Studio 2.7.0 版本发布,让代码效率更高
查看>>
Google发布Zipkin与Stackdriver Trace的集成功能
查看>>
广州成立大数据产业协同创新联盟
查看>>
再见,备份——你好,真正的数据保护
查看>>
安防行业标准规范大全
查看>>
常纪文:智慧城市有助于实现低碳绿色发展
查看>>
大数据产业正处在蓬勃发展的孕育期与机遇期
查看>>
大数据5年规模将达8000亿
查看>>
public virtual T Get<T>(string key, T defaultValue)
查看>>
1-2月我国程控交换机产量同比减少13.96%
查看>>
据说这是个电子元器件采购的春天,我们该如何把握机遇?
查看>>
销售易移动CRM助力制造业转型智能制造
查看>>