SSM框架实战

编程入门 行业动态 更新时间:2024-10-24 00:17:08

SSM框架<a href=https://www.elefans.com/category/jswz/34/1769775.html style=实战"/>

SSM框架实战

项目来源于b站,我跟着视频前后大概用一星期左右实现了这个SSM框架的项目,对于我而言,这算是一个不错的练手项目。私以为还是有一些美中不足的地方,比如up主是把一些基本方法都是封装好的,上手起来很是方便,以至于后期的一些业务,我甚至要去看底层是怎么实现的。对于这个系列,我不会全部都写,只写一些我认为需要记录的!

1. 构建数据库
从up主分享的源码里,有sql文件。打开mysql,建了一个fruitShop的新的数据表(我一般把会数据库名与项目名搞成一致的,这里先埋一个坑)
导入完之后,应该与下面一致。由表名我们就可以知道该表是用来存储什么的。

2. 搭建项目
其实就是整合SSM框架,在之前文章里。已经整合了spring+mybatis,现在无非再加上一个springmvc
pom.xml
这里面jar包并非完全用到,一些我已经注释过了。另外建议使用阿里的镜像

<!--spring  --><dependencies><!-- Spring注解编程所需jar --><dependency><groupId>org.testng</groupId><artifactId>testng</artifactId><version>6.3.1</version><scope>test</scope></dependency><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>2.2</version></dependency><dependency><groupId>com.google.zxing</groupId><artifactId>javase</artifactId><version>2.2</version></dependency><dependency><groupId>javax.servlet.jsp</groupId><artifactId>jsp-api</artifactId><version>2.1</version></dependency><!-- JSTL标签类 --><dependency><groupId>jstl</groupId><artifactId>jstl</artifactId><version>1.2</version></dependency><dependency><groupId>org.glassfish.web</groupId><artifactId>jstl-impl</artifactId><version>1.2</version></dependency><!-- Spring依赖 --><!-- 1.Spring核心依赖 --><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><!-- 这里会获取到properties标签内配置的spring.version的值 --><version>5.3.7</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-aop</artifactId><version>5.3.7</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>5.3.7</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.3.7</version></dependency><!-- 2.Spring dao依赖 --><!-- spring-jdbc包括了一些如jdbcTemplate的工具类 --><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>5.3.7</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-tx</artifactId><version>5.3.4</version></dependency><!-- 3.Spring web依赖 --><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>5.3.7</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>5.3.7</version></dependency><!-- 4.Spring test依赖:方便做单元测试和集成测试 --><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>5.3.7</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-orm</artifactId><version>5.3.7</version></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.4.5</version></dependency><!-- 导入mysql坐标--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.21</version></dependency><!-- 导入dbcp的jar包,用来在applicationContext.xml中配置数据库 --><dependency><groupId>commons-dbcp</groupId><artifactId>commons-dbcp</artifactId><version>1.4</version></dependency><!--  mybatis-spring整合  --><dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>2.0.3</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.13</version><scope>test</scope></dependency><dependency><groupId>org.aspectj</groupId><artifactId>aspectjweaver</artifactId><version>1.8.5</version></dependency><dependency><groupId>cglib</groupId><artifactId>cglib</artifactId><version>3.1</version></dependency><!-- 引入JSON --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-annotations</artifactId><version>2.9.0</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId><version>2.9.0</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.9.0</version></dependency><dependency><groupId>org.codehaus.jackson</groupId><artifactId>jackson-core-asl</artifactId><version>1.9.13</version></dependency><dependency><groupId>org.codehaus.jackson</groupId><artifactId>jackson-mapper-asl</artifactId><version>1.9.13</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.11</version></dependency><!-- mybatis物理分页插件 --><dependency><groupId>com.github.miemiedev</groupId><artifactId>mybatis-paginator</artifactId><version>1.2.15</version></dependency><!-- 导入javee包 --><dependency><groupId>javax</groupId><artifactId>javaee-api</artifactId><version>7.0</version></dependency><!-- 上传组件包 --><dependency><groupId>commons-fileupload</groupId><artifactId>commons-fileupload</artifactId><version>1.3.1</version></dependency><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.4</version></dependency><dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>1.1.1</version></dependency><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper</artifactId><version>4.2.1</version></dependency><dependency><groupId>jsptags</groupId><artifactId>pager-taglib</artifactId><version>2.0</version></dependency><dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>2.9.0</version></dependency><dependency><groupId>com.alipay.sdk</groupId><artifactId>alipay-sdk-java</artifactId><version>3.4.49.ALL</version></dependency><dependency><groupId>org.apache.solr</groupId><artifactId>solr-core</artifactId><version>3.5.0</version></dependency><dependency><groupId>org.apache.solr</groupId><artifactId>solr-solrj</artifactId><version>3.5.0</version></dependency><dependency><groupId>commons-codec</groupId><artifactId>commons-codec</artifactId><version>1.9</version></dependency><dependency><groupId>commons-httpclient</groupId><artifactId>commons-httpclient</artifactId><version>3.1</version></dependency><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.2.5</version></dependency><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpcore</artifactId><version>4.2.4</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>jcl-over-slf4j</artifactId><version>1.6.1</version></dependency><dependency><groupId>org.json</groupId><artifactId>json</artifactId><version>20190722</version></dependency><dependency><groupId>com.gitee.qdbp.thirdparty</groupId><artifactId>ueditor</artifactId><version>1.4.3.3</version></dependency><dependency><groupId>com.sun.jersey</groupId><artifactId>jersey-server</artifactId><version>1.9</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version></dependency><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</version><scope>provided</scope></dependency>

up主将配置文件分得很细,将每一层都单独设一个配置文件。以后熟练后,可以直接一个配置文件搞定。
几个配置文件,我是直接从源码中拿下来的,当然将适当修改一下路径。
base与utils是up主自己封装好的类,我也是直接拿来用。
另外前端的大量jsp,我也没有直接写。直接从源码中,拿出来。

3. 配置web.xml
其中最后的是文件上传需要用到的,暂时可先不配置。

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns=""xmlns:xsi=""xsi:schemaLocation="://java.sun/xml/ns/javaee/web-app_3_0.xsd"><display-name>Archetype Created Web Application</display-name><!-- 实例化Spring容器 --><context-param><param-name>contextConfigLocation</param-name><param-value>classpath:spring/applicationContext-*.xml</param-value></context-param><!-- 监听器的配置文件 --><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><!-- 中文乱码 --><filter><filter-name>characterEncodingFilter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><init-param><param-name>encoding</param-name><param-value>UTF-8</param-value></init-param><init-param><param-name>forceEncoding</param-name><param-value>true</param-value></init-param></filter><filter-mapping><filter-name>characterEncodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping><!--部署SpringMVC的前端控制器  --><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:spring/springmvc.xml</param-value></init-param></servlet><servlet-mapping><servlet-name>springmvc</servlet-name><url-pattern>/</url-pattern></servlet-mapping><filter><filter-name>SystemContextFilter</filter-name><filter-class>cn.hy.filter.SystemContextFilter</filter-class><init-param><param-name>pageSize</param-name><param-value>15</param-value></init-param></filter><filter-mapping><filter-name>SystemContextFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping>
</web-app>

把项目丢到Tomcat,启动后测试运行index.jsp 由于前端素材太多,Tomcat启动会比较耗时,我第一次启动大概20min,觉得时间太长的话,可以negix做前后端分离。

另外代码已经放入github中,这些经过我的亲自上手,似乎更加简单直白。

更多推荐

SSM框架实战

本文发布于:2024-03-09 14:40:40,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1725260.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:实战   框架   SSM

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!