JavaEE之SSM框架整合
- 创建四个包
- 资源目录结构
- 导入需要的Jar包
- 编写配置文件(5个)
-
- applicationContext.xml
- springmvc-config.xml
- mybatis-config.xml
- web.xml
- log4j.properties
- 数据库建表并插入数据
- 根据数据库的字段编写实体类
- 编写Dao层
- 编写Service层
- 编写Controller层
- jsp页面编写
PS:以下内容根据老师讲课内容进行的梳理
创建四个包 在src下创建四个包:entity、dao、service、controller
资源目录结构 在WebContent下建立文件夹:js, jsp, css, images 等
导入需要的Jar包 spring、aop、mybatis、mybatis-spring、dbcp、mysql驱动、lang、jackson等。以下是所有的包
文章图片
编写配置文件(5个) 在src下创建以下5个文件
applicationContext.xml
- 管理service层的JavaBean 用扫描的方式
- 管理数据源 配置dbcp
class的路径通过Web App Libraries找到dbcp2包的BasicDataSource,然后Copy Qualified Name
另:给数据库设置密码
① 点击数据库的用户
② 将这两个点进去 修改密码
文章图片
③ 点击连接属性 将刚才的新密码填进去
即可完成。
- 配置数据库的事务处理
① 通知(transactionManager):注入属性; ref的内容是前面dbcp配置的id名
② 开启事务注解
③ 管理Mybatis: 数据源、configLocation
- mybatis-spring整合:扫描Dao层
完整的applicationContext.xml如下
springmvc-config.xml
- 扫描控制层
- 配置视图解析器
- mvc注解驱动
- 静态资源放行:如果不写该部分,就需要前端控制器处理,那么路径就可能会找不到。
完整的springmvc-config.xml如下
mybatis-config.xml 主要:别名配置
web.xml
ssm >
-name>springMvc
-class>org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:springmvc-config.xml
1
-mapping>
-name>springMvc
/
contextConfigLocation
classpath:applicationContext.xml
org.springframework.web.context.ContextLoaderListener
log4j.properties
log4j.rootCategory=DEBUG, CONSOLE, LOGFILElog4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%C %d{yyyy-MM-dd HH:mm:ss}%m %nlog4j.appender.LOGFILE=org.apache.log4j.FileAppender
log4j.appender.LOGFILE.File=log.log
log4j.appender.LOGFILE.Append=true
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%C %d{yyyy-MM-dd HH:mm:ss}%m %n
数据库建表并插入数据 根据数据库的字段编写实体类 编写Dao层 下面两者的命名要一样
1、ProductMapper接口: 方法
public interface ProductMapper {
public ProductEntity selectProduct(int id);
}
2、ProductMapper.xml
="selectProduct" resultType="productEntity">
select * from tb_product where id=#{id}
编写Service层 1、service接口方法
public interface ProductService {
//验证产品
public boolean validProduct(int id);
}
2、实现service接口中定义的方法
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.cqust.dao.ProductMapper;
import com.cqust.entity.ProductEntity;
@Service
public class ProductServiceImpl implements ProductService{ @Autowired
private ProductMapper productMapper;
@Override
public boolean validProduct(int id) {
//调用Dao层的方法
ProductEntity p=productMapper.selectProduct(id);
if(p.getProductname().equals("huawei")){
return true;
}
return false;
}
}
编写Controller层
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.cqust.service.ProductService;
@Controller
public class ProductController { @Autowired
private ProductService productService;
@GetMapping("/toFindProduct")
public String toFindProduct(){
return "product";
}
@PostMapping("/findProduct")
@ResponseBody//该注解用于转换到Jackson串
public String findProduct(int id){
boolean rtn=productService.validProduct(id);
if(rtn == true){
return "Yes";
}
return "No";
}
}
jsp页面编写 【JavaEE之SSM|JavaEE之SSM框架整合】body部分
推荐阅读
- ssm整合详解
- java|整合SSM框架全步骤
- SSM整合的企业权限管理系统
- 分布式|MQ介绍,RabbitMQ在SpringAMQP中的使用
- Spring|19、Spring Cloud ——Spring Cloud Bus之RabbitMQ介绍
- java|SpringSecurity安全性框架详解
- Java|某程序员在网吧敲代码,出类拔萃,网友(为何我被打的却是我)
- 字符串|7行代码让B站崩溃3小时,竟因“一个诡计多端的0”
- spring|spring,springboot,springmvc底层原理解析