基于SSM的水果商城系统(1)-系统配置运行过程

项目介绍

这是公众号 “java攀登” 的一个开源项目,配有代码与视频教程
系统开发平台:Tomcat8.0+JDK1.8+Windows7
开发语言:JavaEE
框架:SSM-Spring+SpringMVC+Mybatis
前端:JSP
数据库:MySql5.7
开发环境:Intellij Idea
浏览器:Chrome
源代码地址链接:链接:https://pan.baidu.com/s/1WNTpfa2SO5MZ7CQ3KF0wqQ
提取码:zf1p
B站视频地址:https://www.bilibili.com/video/BV1VA411i7xX?p=2

=======================================
win10 XP也可以,Tomcat+JDK+MySql版本要一致(我的Tomcat版本是8.5.5,我暂时不换,出问题再换吧,应该支持向下兼容)

新建数据库

mysql 我提供的是5.5.62版本 应该差不多
安装包:链接:https://pan.baidu.com/s/1bg_gfbtkYfI4tjamlsmkXA
提取码:yrxh

安装教程:https://www.bilibili.com/video/BV12b411K7Zu?p=7
Navicat安装包及安装教程
链接:https://pan.baidu.com/s/1yBjYR5PJwWcqDxS6dUoD3A
提取码:kx9s

mysql的可视化界面可以用navicat和sqlyog(给出安装教程)
基于SSM的水果商城系统(1)-系统配置运行过程_第1张图片基于SSM的水果商城系统(1)-系统配置运行过程_第2张图片
找到提供的sql文件

在这里插入图片描述
导入成功之后按F5刷新
基于SSM的水果商城系统(1)-系统配置运行过程_第3张图片
导入数据库之后,可以导入最基础的项目

先确定安装了jdk tomcat maven(3.6.1)

用IDEA打开项目

这里可以提供jdk1.8+IDEA安装包 2019.3.3及安装教程
链接:https://pan.baidu.com/s/1Xm_wnWbmFR5JFYPSOhIuig
提取码:jb7u

基于SSM的水果商城系统(1)-系统配置运行过程_第4张图片
导入之后配置 java compiler选择 8
基于SSM的水果商城系统(1)-系统配置运行过程_第5张图片

配置Maven

本项目用的是 maven(3.6.1)

maven下载地址:https://archive.apache.org/dist/maven/maven-3/3.6.1/binaries/
百度云地址:链接:https://pan.baidu.com/s/1Ut1ZX5hDAdJKWtt5yXEgcA
提取码:qlcn
基于SSM的水果商城系统(1)-系统配置运行过程_第6张图片我目前的Maven版本是3.3.9,所以我需要换maven 版本,我不知道能不能安装多个Maven版本,所以我决定用3.6.1的包,然后改配置的环境变量,Maven是3.6.1的可略过这一步

安装过程如下
先修改仓库地址
就是Maven自动下载jar包后保存到你电脑上的位置
首先找到Maven3.6.1压缩包解压到自己的目录,打开 apache-maven-3.6.1\conf\settings.xml

基于SSM的水果商城系统(1)-系统配置运行过程_第7张图片可以看到,现在Maven仓库默认位置是.m2/repository
现在,我们更改成自己想要的位置(注意斜杆的方向,不要有中文)在以后的开发中,用到的资源都会慢慢地积累到这里
基于SSM的水果商城系统(1)-系统配置运行过程_第8张图片配置阿里云
基于SSM的水果商城系统(1)-系统配置运行过程_第9张图片

	<mirror>
      <id>alimaven</id>
      <mirrorOf>central</mirrorOf>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
    </mirror>

这里我们直接加一个阿里的镜像源,这样我们在下载依赖的时候会比去中央仓库下载快很多。
基于SSM的水果商城系统(1)-系统配置运行过程_第10张图片
配置环境变量

Maven学习笔记(二)maven核心概念、maven工具的安装和配置

基于SSM的水果商城系统(1)-系统配置运行过程_第11张图片可以看到,我的Maven版本已经切换成3.6.1了,我要换成原来的3.3.9的话,也只需要更改一下环境变量
选择Maven版本 3.6.1,注意红框的地方都改一下
基于SSM的水果商城系统(1)-系统配置运行过程_第12张图片

配置Tomcat

基于SSM的水果商城系统(1)-系统配置运行过程_第13张图片
可以看到有个小红叉,因为我的Tomcat版本跟原项目不一致,所以我需要配置一下
在这里插入图片描述

基于SSM的水果商城系统(1)-系统配置运行过程_第14张图片

基于SSM的水果商城系统(1)-系统配置运行过程_第15张图片

运行

运行 程序报错

基于SSM的水果商城系统(1)-系统配置运行过程_第16张图片解决方案
idea maven 报-source 1.5 中不支持 diamond 运算符
再次运行,成功解决

基于SSM的水果商城系统(1)-系统配置运行过程_第17张图片
可以看到,包不存在
maven下手动导入ojdbc6.jar
使用Maven下载依赖,出现如下错误(可能是我的网络问题,过一会再运行就没有包的问题了)
基于SSM的水果商城系统(1)-系统配置运行过程_第18张图片基于SSM的水果商城系统(1)-系统配置运行过程_第19张图片

各种包下好之后,运行出现如下错误
基于SSM的水果商城系统(1)-系统配置运行过程_第20张图片

解决方法
Cannot open url. please check this url is correct
确保端口一样
基于SSM的水果商城系统(1)-系统配置运行过程_第21张图片
再次运行,如图,已经运行成功了
基于SSM的水果商城系统(1)-系统配置运行过程_第22张图片
有可能你会发现过一会就出现500错误了
基于SSM的水果商城系统(1)-系统配置运行过程_第23张图片

解决方法
找到index.jsp 注释掉图中所示的代码(鼠标定位到第6行开头,然后按Ctrl+/)

基于SSM的水果商城系统(1)-系统配置运行过程_第24张图片
基于SSM的水果商城系统(1)-系统配置运行过程_第25张图片

谷歌浏览器按F12可以调出调试控制台,如下图,可以改变控制台的位置
基于SSM的水果商城系统(1)-系统配置运行过程_第26张图片

pom文件介绍

这个项目是用Maven写的,用Maven引入jar包,代替了传统的直接把jar包拷贝到项目里面的方式
接下来介绍一下用到的包

spring版本4.1.4

 <spring.version>4.1.4.RELEASE</spring.version>

mybatis版本

 <mybatis.version>3.2.8</mybatis.version>

日志输出

<slf4j.version>1.7.7</slf4j.version>
<log4j.version>1.2.17</log4j.version>

单元测试

  <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <!-- 表示开发的时候引入,发布的时候不会加载此包 -->
            <scope>test</scope>
        </dependency>

Spring注解编程所需jar
zxing 是二维码需要用

<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>

spring核心包

spring-core
spring-web
spring-oxm:跟数据库的关系
spring-tx:支持事务
spring-jdbc 数据库连接
spring-webmvc:用到springmvc这一块
spring-aop面向切面编程
spring-context-support:上下文支持
spring-test 测试
spring-orm跟数据库的映射关系
aspectjweaver 面向切面的框架
cglib反射,对于Spring来说就是动态代理,本质还是反射

hibernate校验

 <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-validator</artifactId>
            <version>5.1.0.Final</version>
        </dependency>

        <dependency>
            <groupId>javax.validation</groupId>
            <artifactId>validation-api</artifactId>
            <version>1.0.0.GA</version>
        </dependency>

引入JSON

  <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>2.6.3</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.6.3</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.6.3</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>//阿里巴巴的快速解析json
            <version>1.2.11</version>
        </dependency>

其他包介绍

com.github.pagehelper 分页工具
com.alipay.sdk 支付
commons-codec 编码解码
commons-httpclient  httpclient  httpcore 网络连接
json json解析
ueditor 前端富文本,多字体,图片啊之类的

项目架构

先分析web.xml
web.xml是javaee的入口文件

默认页面显示index.jsp

<welcome-file>index.jsp</welcome-file>

强制编码格式为utf-8

 <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>/*
    

servlet拦截用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>

分页,默认分页每页15个

 <filter>
        <filter-name>SystemContextFilter</filter-name>
        <filter-class>com.javapandeng.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>/*
    

基于SSM的水果商城系统(1)-系统配置运行过程_第27张图片dao是跟数据库查询的一些配置
service是service层的配置
transaction是事务的配置

你可能感兴趣的:(SSM)