基于ssm框架和freemarker的商品销售系统

项目说明

1、项目文件结构

 

 

2、项目主要接口及其实现

 (1)Index:

首页页面:展示商品功能,可登录或查看商品详细信息

 

 (2)登录:/ApiLogin

 

 

3、dao层

数据持久化层,把商品和用户信息寸进mysql数据库

(1)ContentDao

 

 

 (2)PersonDao

 

(3)ProductDao

 

(4)TransactionDao

 

4、spring配置文件和mybatis配置文件

spring-mvc.xml

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4        xmlns:context="http://www.springframework.org/schema/context"
 5        xmlns:mvc="http://www.springframework.org/schema/mvc"
 6        xsi:schemaLocation="http://www.springframework.org/schema/beans
 7                         http://www.springframework.org/schema/beans/spring-beans.xsd
 8                         http://www.springframework.org/schema/context
 9                         http://www.springframework.org/schema/context/spring-context.xsd
10                         http://www.springframework.org/schema/mvc
11                         http://www.springframework.org/schema/mvc/spring-mvc.xsd">
12 
13     <!-- 自动扫描该包,使SpringMVC认为包下用了@controller注解的类是控制器 -->
14     <context:component-scan base-package="com.web.controller"></context:component-scan>
15     <!-- 扩充了注解驱动,可以将请求参数绑定到控制器参数 -->
16     <mvc:annotation-driven/>
17     <mvc:default-servlet-handler/>
18     
19     <!-- 配置事务管理器
20     <bean id="transactionManager"
21           class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
22         <!- 注入数据库连接池 ->
23         <property name="dataSource" ref="dataSource"/>
24     </bean>
25     -->
26     <!-- freemarker配置 -->
27     <bean id="freemarkerConfig"
28           class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
29         <property name="templateLoaderPath" value="/WEB-INF/freemarker" />
30         <property name="templateLoaderPaths" value="/template"/>
31         <property name="freemarkerSettings">
32             <props>
33                 <prop key="template_update_delay">0</prop><!--刷新模板的周期,单位为秒-->
34                 <prop key="defaultEncoding">UTF-8</prop><!--模板的编码格式 -->
35             </props>
36         </property>
37     </bean>
38     <!-- freemarker视图解析器 -->
39     <bean
40             class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
41         <property name="viewResolvers">
42             <list>
43                 <bean id="viewResolver"
44                       class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
45                     <property name="cache" value="true" />
46                     <property name="prefix" value="" />
47                     <property name="suffix" value=".ftl" />
48                     <property name="contentType" value="text/html; charset=UTF-8" />
49                 </bean>
50             </list>
51         </property>
52         <property name="defaultViews">
53             <list>
54                 <bean
55                         class="org.springframework.web.servlet.view.json.MappingJackson2JsonView" />
56             </list>
57         </property>
58     </bean>
59     <!-- SpringMVC上传文件时,需要配置MultipartResolver处理器 -->
60     <bean id="multipartResolver"
61           class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
62         <property name="defaultEncoding" value="UTF-8" />
63         <!-- 指定所上传文件的总大小,单位字节。注意maxUploadSize属性的限制不是针对单个文件,而是所有文件的容量之和 -->
64         <property name="maxUploadSize" value="10240000" />
65     </bean>
66 
67     <!--注册拦截器-->
68 
69 </beans>

 

spring-mybatis.xml

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!-- 配置文件需要引入的类 -->
 3 <beans xmlns="http://www.springframework.org/schema/beans"
 4        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 5        xmlns:context="http://www.springframework.org/schema/context"
 6        xmlns:mybatis="http://mybatis.org/schema/mybatis-spring"
 7        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
 8 
 9         http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
10 
11 
12 
13 
14         http://mybatis.org/schema/mybatis-spring http://mybatis.org/schema/mybatis-spring.xsd">
15     <!-- scanner -->
16     <context:component-scan base-package="com.web.service"></context:component-scan>
17     <context:component-scan base-package="com.web.service.impl"></context:component-scan>
18 
19 
20     <!-- Spring and mybatis-->
21     <mybatis:scan base-package="com.web.dao"/>
22 
23 
24     <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
25         <property name="dataSource" ref="dataSource"/>
26     </bean>
27 
28     <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
29           destroy-method="close">
30         <property name="driverClassName" value="${jdbc.driverClassName}"></property>
31         <property name="url" value="${jdbc.url}"></property>
32         <property name="username" value="${jdbc.username}"></property>
33         <property name="password" value="${jdbc.password}"></property>
34         <!-- 初始化连接大小 -->
35         <property name="initialSize" value="${initialSize}"></property>
36         <!-- 连接池最大数量 -->
37         <property name="maxActive" value="${maxActive}"></property>
38         <!-- 连接池最大空闲 -->
39         <property name="maxIdle" value="${maxIdle}"></property>
40         <!-- 连接池最小空闲 -->
41         <property name="minIdle" value="${minIdle}"></property>
42         <!-- 获取连接最大等待时间 -->
43         <property name="maxWait" value="${maxWait}"></property>
44     </bean>
45 
46     <context:property-placeholder location="classpath:db.properties"/>
47 
48     <!-- 配置基于注解的声明式事务
49     <bean id="transactionManager"
50                 class="org.springframework.orm.jpa.JpaTransactionManager">
51         <property name="dataSource" ref="dataSource" />
52     </bean>
53 
54     <tx:annotation-driven transaction-manager="transactionManager"/>
55     -->
56 </beans>

 

db.properties

 1 jdbc.driverClassName= com.mysql.jdbc.Driver
 2 jdbc.url= jdbc:mysql://localhost:3306/shen_db?characterEncoding=utf8&useSSL=true
 3 jdbc.username=root
 4 jdbc.password=123456
 5 initialSize=0
 6 #定义最大连接数
 7 maxActive=20
 8 #定义最大空闲
 9 maxIdle=20
10 #定义最小空闲
11 minIdle=1
12 #定义最长等待时间
13 maxWait=60000

 

5、运行截图

 

首页

 

 买家购物车

 

买家账单

 

卖家发布商品界面

 

转载于:https://www.cnblogs.com/shenzhi/p/7590973.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/391291.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

简·雅各布斯指数第二部分:测试

In Part I, I took you through the data gathering and compilation required to rank Census tracts by the four features identified by Jane Jacobs as the foundation of a great neighborhood:在第一部分中 &#xff0c;我带您完成了根据简雅各布斯(Jacobs Jacobs)所确定…

Docker 入门(3)Docke的安装和基本配置

1. Docker Linux下的安装 1.1 Docker Engine 的版本 社区版 ( CE, Community Edition ) 社区版 ( Docker Engine CE ) 主要提供了 Docker 中的容器管理等基础功能&#xff0c;主要针对开发者和小型团队进行开发和试验企业版 ( EE, Enterprise Edition ) 企业版 ( Docker Engi…

python:单元测试框架pytest的一个简单例子

之前一般做自动化测试用的是unitest框架&#xff0c;发现pytest同样不错&#xff0c;写一个例子感受一下 test_sample.py import cx_Oracle import config from send_message import send_message from insert_cainiao_oracle import insert_cainiao_oracledef test_cainiao_mo…

抑郁症损伤神经细胞吗_使用神经网络探索COVID-19与抑郁症之间的联系

抑郁症损伤神经细胞吗The drastic changes in our lifestyles coupled with restrictions, quarantines, and social distancing measures introduced to combat the corona virus outbreak have lead to an alarming rise in mental health issues all over the world. Social…

Docker 入门(4)镜像与容器

1. 镜像与容器 1.1 镜像 Docker镜像类似于未运行的exe应用程序&#xff0c;或者停止运行的VM。当使用docker run命令基于镜像启动容器时&#xff0c;容器应用便能为外部提供服务。 镜像实际上就是这个用来为容器进程提供隔离后执行环境的文件系统。我们也称之为根文件系统&a…

python:pytest中的setup和teardown

原文&#xff1a;https://www.cnblogs.com/peiminer/p/9376352.html  之前我写的unittest的setup和teardown&#xff0c;还有setupClass和teardownClass&#xff08;需要配合classmethod装饰器一起使用&#xff09;&#xff0c;接下来就介绍pytest的类似于这类的固件。 &#…

如何开始使用任何类型的数据? - 第1部分

从数据开始 (START WITH DATA) My data science journey began with a student job in the Advanced Analytics department of one of the biggest automotive manufacturers in Germany. I was nave and still doing my masters.我的数据科学之旅从在德国最大的汽车制造商之一…

iHealth基于Docker的DevOps CI/CD实践

本文由1月31日晚iHealth运维技术负责人郭拓在Rancher官方技术交流群内所做分享的内容整理而成&#xff0c;分享了iHealth从最初的服务器端直接部署&#xff0c;到现在实现全自动CI/CD的实践经验。作者简介郭拓&#xff0c;北京爱和健康科技有限公司&#xff08;iHealth)。负责公…

机器学习图像源代码_使用带有代码的机器学习进行快速房地产图像分类

机器学习图像源代码RoomNet is a very lightweight (700 KB) and fast Convolutional Neural Net to classify pictures of different rooms of a house/apartment with 88.9 % validation accuracy over 1839 images. I have written this in python and TensorFlow.RoomNet是…

leetcode 938. 二叉搜索树的范围和

给定二叉搜索树的根结点 root&#xff0c;返回值位于范围 [low, high] 之间的所有结点的值的和。 示例 1&#xff1a; 输入&#xff1a;root [10,5,15,3,7,null,18], low 7, high 15 输出&#xff1a;32 示例 2&#xff1a; 输入&#xff1a;root [10,5,15,3,7,13,18,1,nul…

COVID-19和世界幸福报告数据告诉我们什么?

For many people, the idea of ​​staying home actually sounded good at first. This process was really efficient for Netflix and Amazon. But then sad truths awaited us. What was boring was the number of dead and intubated patients one after the other. We al…

iOS 开发一定要尝试的 Texture(ASDK)

原文链接 - iOS 开发一定要尝试的 Texture(ASDK)(排版正常, 包含视频) 前言 本篇所涉及的性能问题我都将根据滑动的流畅性来评判, 包括掉帧情况和一些实际体验 ASDK 已经改名为 Texture, 我习惯称作 ASDK 编译环境: MacOS 10.13.3, Xcode 9.2 参与测试机型: iPhone 6 10.3.3, i…

lisp语言是最好的语言_Lisp可能不是数据科学的最佳语言,但是我们仍然可以从中学到什么呢?...

lisp语言是最好的语言This article is in response to Emmet Boudreau’s article ‘Should We be Using Lisp for Data-Science’.本文是对 Emmet Boudreau的文章“我们应该将Lisp用于数据科学”的 回应 。 Below, unless otherwise stated, lisp refers to Common Lisp; in …

static、volatile、synchronize

原子性&#xff08;排他性&#xff09;&#xff1a;不论是多核还是单核&#xff0c;具有原子性的量&#xff0c;同一时刻只能有一个线程来对它进行操作&#xff01;可见性&#xff1a;多个线程对同一份数据操作&#xff0c;thread1改变了某个变量的值&#xff0c;要保证thread2…

1.10-linux三剑客之sed命令详解及用法

内容:1.sed命令介绍2.语法格式,常用功能查询 增加 替换 批量修改文件名第1章 sed是什么字符流编辑器 Stream Editor第2章 sed功能与版本处理出文本文件,日志,配置文件等增加,删除,修改,查询sed --versionsed -i 修改文件内容第3章 语法格式3.1 语法格式sed [选项] [sed指令…

python pca主成分_超越“经典” PCA:功能主成分分析(FPCA)应用于使用Python的时间序列...

python pca主成分FPCA is traditionally implemented with R but the “FDASRSF” package from J. Derek Tucker will achieve similar (and even greater) results in Python.FPCA传统上是使用R实现的&#xff0c;但是J. Derek Tucker的“ FDASRSF ”软件包将在Python中获得相…

初探Golang(2)-常量和命名规范

1 命名规范 1.1 Go是一门区分大小写的语言。 命名规则涉及变量、常量、全局函数、结构、接口、方法等的命名。 Go语言从语法层面进行了以下限定&#xff1a;任何需要对外暴露的名字必须以大写字母开头&#xff0c;不需要对外暴露的则应该以小写字母开头。 当命名&#xff08…

大数据平台构建_如何像产品一样构建数据平台

大数据平台构建重点 (Top highlight)Over the past few years, many companies have embraced data platforms as an effective way to aggregate, handle, and utilize data at scale. Despite the data platform’s rising popularity, however, little literature exists on…

初探Golang(3)-数据类型

Go语言拥有两大数据类型&#xff0c;基本数据类型和复合数据类型。 1. 数值类型 ##有符号整数 int8&#xff08;-128 -> 127&#xff09; int16&#xff08;-32768 -> 32767&#xff09; int32&#xff08;-2,147,483,648 -> 2,147,483,647&#xff09; int64&#x…

时间序列预测 时间因果建模_时间序列建模以预测投资基金的回报

时间序列预测 时间因果建模Time series analysis, discussed ARIMA, auto ARIMA, auto correlation (ACF), partial auto correlation (PACF), stationarity and differencing.时间序列分析&#xff0c;讨论了ARIMA&#xff0c;自动ARIMA&#xff0c;自动相关(ACF)&#xff0c;…