IDEA整合SSM框架实现网页上显示数据

最近做了个小项目,该项目包在intellij idea中实现了ssm框架的整合以及实现访问,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

我们来整合SSM框架

第一步、

创建一个maven工程。配置Tomcat,并测试是否正常访问HelloWorld.
这一步就省略了。
不懂得看这个博客:

idea创建maven项目

创建出来是这样的:

在这里插入图片描述

我们从这里开始整合ssm。

第二步、

在pom.xml导入依赖,以下依赖是ssm常用的一些依赖,都导进去,没有坏处。

  UTF-81.71.72.9.0  junitjunit4.11test org.springframeworkspring-webmvc5.1.3.RELEASE aopallianceaopalliance1.0 org.aspectjaspectjweaver1.9.2 org.apache.commonscommons-dbcp22.7.0 org.apache.commonscommons-pool22.8.0 org.springframeworkspring-aspects5.1.3.RELEASE org.springframeworkspring-test5.1.3.RELEASE mysqlmysql-connector-java5.1.46 com.mchangec3p00.9.5.2 org.mybatismybatis3.4.5 org.springframeworkspring-jdbc5.1.3.RELEASE org.mybatismybatis-spring1.3.1 org.springframeworkspring-tx5.1.3.RELEASE org.projectlomboklombok1.18.10 net.sf.json-libjson-lib2.4jdk15 commons-beanutilscommons-beanutils1.7.0 commons-collectionscommons-collections3.1 commons-langcommons-lang2.5 net.sf.ezmorphezmorph1.0.3 commons-loggingcommons-logging1.2 com.alibabadruid1.2.6 javax.servlet.jsp.jstljstl-api1.2-rev-1 taglibsstandard1.1.2 org.apache.taglibstaglibs-standard-spec1.2.5 org.apache.taglibstaglibs-standard-impl1.2.5 com.fasterxml.jackson.corejackson-databind${jackson.version} com.fasterxml.jackson.corejackson-core${jackson.version} com.fasterxml.jackson.corejackson-annotations${jackson.version} com.alibabaeasyexcel2.1.1 org.apache.poipoi3.17 org.apache.poipoi-ooxml3.17   src/main/java **/*.xml

第三步、

创建数据表。
创建一个名称为category_的数据表,只有两个字段,一个id, 一个name,id自增。随便插入点数据。

 DROP TABLE IF EXISTS `category_`; CREATE TABLE `category_` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8; -- ---------------------------- -- Records -- ---------------------------- INSERT INTO `category_` VALUES ('1', 'sadf'); INSERT INTO `category_` VALUES ('2', 'safa'); INSERT INTO `category_` VALUES ('3', 'adfasdfas'); INSERT INTO `category_` VALUES ('4', '张阿道夫'); INSERT INTO `category_` VALUES ('5', '违法收费'); INSERT INTO `category_` VALUES ('6', '发生的v'); INSERT INTO `category_` VALUES ('7', 'sdfsd'); INSERT INTO `category_` VALUES ('8', '34535'); 

在这里插入图片描述

第四步、

编写实体类;DAO层;Service层;Controller层。

像我这样,在java文件夹目录下,创建这几个包。

在这里插入图片描述

然后在包下创建对应的java文件或配置文件,最终的项目结构是这样的:
(那些打马赛克的东西你们用不到,小孩子别看那些。)

在这里插入图片描述

接下来开始写实体类:

实体类名称最好见名知意,跟数据表名称要对上。因为使用了lombok插件,所以使用@Data注解,减少代码量。

Category.java

 package com.entity; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @Data @AllArgsConstructor @NoArgsConstructor public class Category { private int id; private String name; } 

然后是DAO层,这里写的多是接口,只写方法,不实现。

CategoryDao.java

 package com.dao; import com.entity.Category; import java.util.List; public interface CategoryDao { public int add(Category category); public void delete(int id); public Category get(int id); public int update(Category category); public List list(); } 

然后在DAO层下创建对应的Mapper.xml文件。
注意namespace要对上,还有id对应上方法名。

CategoryMapper.xml

    insert into category_ ( name ) values (#{name})  delete from category_ where id= #{id}  update category_ set name=#{name} where id=#{id} 

然后是Service层,这里才是你要实现业务的地方。这里也是接口,在impl实现类里才是写真正实现的。
这里只实现一个:查询所有数据。

CategoryService.java

 package com.service; import com.entity.Category; import java.util.List; public interface CategoryService { List list(); } 

然后写实现类。

CategoryServiceImpl.java

 package com.service.impl; import com.dao.CategoryDao; import com.entity.Category; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.service.CategoryService; import java.util.List; @Service public class CategoryServiceImpl implements CategoryService { @Autowired CategoryDao categoryDao; @Override public List list() { return categoryDao.list(); } } 

然后写Controller层。

IndexController.java

 package com.controller; import com.entity.Category; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.servlet.ModelAndView; import com.service.CategoryService; import java.util.ArrayList; import java.util.List; @Controller @RequestMapping("/") public class IndexController { @Autowired CategoryService categoryService; @RequestMapping("listCategory") public ModelAndView listCategory(){ ModelAndView mav = new ModelAndView(); List cs= categoryService.list(); // 放入转发参数 mav.addObject("cs", cs); // 放入jsp路径 mav.setViewName("listCategory"); return mav; } } 

OK,写到这里,你已经成功一半啦!给自己鼓鼓掌!
接下来,我们一鼓作气,写好配置文件并访问数据吧!

第五步、

编写配置文件。

在resources目录下,创建两个配置文件。

注意把数据库,密码,改成自己的,

applicationContext.xml

     com.mysql.jdbc.Driver jdbc:mysql://localhost:3306/ssm?characterEncoding=UTF-8 root root  

springMVC.xml

       

最后就是web.xml了。

web.xml

    contextConfigLocationclasspath:applicationContext.xml org.springframework.web.context.ContextLoaderListener mvc-dispatcherorg.springframework.web.servlet.DispatcherServlet contextConfigLocationclasspath:springMVC.xml1 mvc-dispatcher/

第六步、

创建listCategory.jsp文件。
在WEB-INF目录下创建jsp文件夹,将jsp文件都放在这里,因为我们在springMVC.xml中配置过的,就不过多解释了。

不知道在哪创建的可以回头看一下我的那个项目路径,根据那个来即可

listCategory.jsp

 <%-- Created by IntelliJ IDEA. User: Administrator Date: 2021/5/12 Time: 12:46 To change this template use File | Settings | File Templates. --%><%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="UTF-8" import="java.util.*"%><%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>  Title  
idname
${c.id}${c.name}

这里得到数据的思路我就不多说了吧,懂得都懂。就是jsp页面中通过jstl标签来获取到Controller中返回的数据。

OK,到这里,大功告成!启动Tomcat,测试一下。

没问题吧,注意这里的访问路径,http://localhost:8885/listCategory ,不是直接访问jsp页面,是访问controller中的请求路径。
ok,就到这吧,

在这里插入图片描述

这里有一个小小的改进,就是controller的改变,使用@ResponseBody注解来返回数据,然后前端通过ajax来异步请求数据。

ListController.java

 package com.controller; import com.entity.Category; import com.service.CategoryService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; import java.util.List; @Controller @RequestMapping("/") public class ListController { @Autowired CategoryService categoryService; @RequestMapping("list/allCategory") @ResponseBody public List findAll(){ List list = categoryService.list(); System.out.println(list.size()); return  list; } @RequestMapping("/listall") public String listAll(){ return "listall"; } }

在jsp文件夹下创建listall.jsp页面。

listall.jsp

 <%-- Created by IntelliJ IDEA. User: Administrator Date: 2021/5/14 Time: 10:05 To change this template use File | Settings | File Templates. --%><%@ page isELIgnored="false"%><%@ page contentType="text/html;charset=UTF-8" language="java" %><%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><%@taglib prefix="f" uri="http://java.sun.com/jsp/jstl/fmt" %>  首页 
id姓名

然后访问测试listall页面:

先访问list/allCategory请求路径,看看数据是否正常回显。

在这里插入图片描述

然后访问listall, 点击一下获取数据,OK,没问题吧,老铁们。

在这里插入图片描述

到此这篇关于IDEA整合SSM框架实现网页上显示数据的文章就介绍到这了,更多相关IDEA整合SSM内容请搜索html中文网以前的文章或继续浏览下面的相关文章希望大家以后多多支持html中文网!

以上就是IDEA整合SSM框架实现网页上显示数据的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » Java