ssmtp框架 模块控制器如何同时触发两个控制器

java高并发框架 SSM框架 详细整合教程(Spring+SpringMVC+MyBatis)
时间: 01:55:53
&&&& 阅读:505
&&&& 评论:
&&&& 收藏:0
标签:&&&&&&&&&&&&&&&650) this.width=650;" width="600" class="zoom" id="aimg_pM30m"
src="/imgextra/i2//TB2q1occVXXXXchXpXXXXXXXXXX-.png" border="0" />& &QQ: & &【免费支持更新】A 代码生成器(开发利器);全部是源码&&& &增删改查的处理类,service层,mybatis的xml,SQL( mysql& &和oracle)脚本,& &jsp页面 都生成& &就不用写搬砖的代码了,生成的放到项目里,可以直接运行B 阿里巴巴数据库连接池&&数据库连接池&&阿里巴巴的 druid。Druid在监控、可扩展性、稳定性和性能方面都有明显的优势C 安全权限框架&&Shiro 是一个用 Java 语言实现的框架,通过一个简单易用的 API 提供身份验证和授权,更安全,更可靠D ehcache 分布式缓存;&&是一个纯Java的进程内缓存框架,具有快速、精干等特点,广泛使用的开源Java分布式缓存。E 微信接口开发(后续会加入Activiti5 工作流 )赠送一个jbpm工作流大型ERP系统(含OA、财务、分销)参考学习F WebSocket 通信技术 即时通讯功能-------------------------------------------------------------------------------------------------------------------------1. 模块化、服务化,流程化,耦合度低、扩展性好,灵活度高,工具类封装完整,干净利索,调用简单方便 2. 提供Rest服务,支持APP手机应用(android和ios)接口、php、.net、易语言、VB等第三方接口调用 3. 全新高大尚HTML5+css3.0+bootstrap响应式开发界面UI,( 手机 PC 平板 截图在下面)、前沿.&&spring restful 风格 4. 框架搭建完善成熟,在此基础上做过很多项目,系统具有并发处理、分布式、稳定性。 5. 系统功能完善,此为框架平台,文档、注释齐全,提供技术支持,专门供二次开发 6. 在此基础上可二次开发(OA、ERP、CRM ,医疗管理、金融、网站后台、APP后台、电子商务、商城(赠送UI)等等7.我们这边是公司,主要业务是定制开发,&&此系统为我们平时给客户做项目用的,经过很多项目实战考验 &&-------------------------------------------------------------------------------------------------------------------------系统模块1. 组织管理:角色管理,分角色组和成员,有组权限和成员权限。2. 系统用户:对各个基本的组会员增删改查,单发、群发邮件短信,导入导出excel表格,批量删除3. 会员管理:对前台用户管理,分配会员级别,到期时间,状态,联系信息等资料4. 菜单管理:增删改查菜单 ztree(自定义菜单)业务菜单和系统菜单分离5. 数据字典:无限级别,支持多级别无限分类。内设编号,排序等6. 系统设置:修改系统名称,邮件服务器配置,短信账号设置,图片水印配置,微信配置7. 代码生成:打开代码生成器模块& &&&8. 图库管理:对批量上传的图片统一管理 9. 性能监控:监控整个系统的性能,SQL监控,SQL防火墙,URL监控,SPRING监控,SESSION监控等10. 接口测试:POST or GET 方式检测系统接口,参数加密,json返回结果,计算服务器响应时间11. 发送邮件:单发,群发邮件& & 12. 置二维码:生成 or&&解析二维码& &&&13.地图工具:经纬度操作14.即时通讯:打开即时聊天窗口15.在线管理:(统计在线人数和在线列表,可强制某用户下线),同一用户只能在一个客户端登录16.打印测试:页面打印预览测试 ------------------------------------------------------------------------------------------------------------------------- 菜单权限:分配给每个角色不同的菜单权限, 每个角色看到的菜单不同 按钮权限:独立分配不同的角色不同的功能权限,增删改查权限分配具体到不同的菜单 支持多用户分权限管理后台,&&权限具体到不同的菜单不同的按钮 --------------------------------------------------------------------------------------------------------------信息模块(小项目代码中) 新闻管理:新闻的维护、发布、权重排序等 采用百度ueditor富文本框 公告管理:公告的维护、发布 广告管理:广告的维护、发布,状态维护,上传广告图片 友情链接:友情链接的维护、状态维护 特别推荐:特别推荐、状态维护微信模块关注回复:微信用户关注公众号回复文本回复:匹配关键词进行文本回复图文回复:匹配关键词进行图文回复应用命令:匹配关键词进行命令操作,例如微信发送命令,执行服务器重启、关机、锁定等操作 -------------------------------------------------------------------------------------------------------------------------技术点1. 导出 导入 excel 文件2&&导出word文件3. IO 流上传下载文件4. 群发邮件,可以发html、纯文本格式,可以发给任意邮箱(实现批量发送广告邮件)5. 群发or单独 发送短信,支持两种第三方短信商接口6. spring& &aop&&事物处理7. 代码生成器 (freemarker), 代码 zip 压缩打包8. MD5加密 SHA加密(登录密码用此加密)接口加密身份校验9. 数据库连接池&&阿里的 druid。Druid在监控、可扩展性、稳定性和性能方面都有明显的优势,支持并发10.加入安全框架 shiro (登录授权)(session管理)11.根据汉字 解析汉字的全拼(拼音)和首字母(导入excel到用户表,根据用户的汉字姓名生成拼音的用户名)12.app接口@ResponseBody(支持与其它语言数据交互)13.极光推送 (推送给APP及时消息,APP不启动也能收到)14.微信接口(身份验证,文本、图文回复等) 微信远程控制服务器重启、锁定、其它应用程序15.java Quartz 定时器 (定时执行某程序,精确到秒,可设置周期)16.java websocket 即时通讯技术,点对点,群聊,单聊,EXT4对话框17.新增Lucene全文检索18.Base64传输图片19.图片加水印(图片水印,文字水印)20.生成 or&&解析 二维码21.HTML5 + JAVAEE&&WebSocket 通信技术,WebSocket 验证用户登录,强制某用户下线22.批量异步上传图片,可预览,有进度条,支持拖拽上传(百度webuploader )。列表动态滑动放大展示。23.ehcache 自定义二级缓存 ,选择缓存存放目录,处理并发,增加系统性能24.服务器内部GET POST 请求25.uploadify 上传插件,单条、批量上传多线程,带进度条,异步,图片、视频, 其它文件格式均可上传26.地图选点获取经纬度坐标,根据俩经纬度计算距离27.tab标签页面功能,标签自由切换,不重复操作数据库 ------------------------------------------------------------------------------------------------------------------------- 系统框架为:springmvc + mybaits 3.2 有 maven 版本和 非maven 版本 jdk 1.6 1.7 1.8&&tomcat 6 7 8 数据库:oracle 版本 和 msyql 版本 ( spring3.0 和4.02&&mybaits 3.2)& &&&开发工具:myeclipse&&eclipse 均可 赠送 同UI& && &springmvc + hibernate&&SpringSecurity Lucene Quartz MySQL、Oracle、SQL Server 赠送 同UI&&maven 分模块项目 springmvc + mybatis ------------------------------------------------------------------------------------------------------------------------- 系统演示视频:链接:
密码: t987 之前录的(有点粗糙, 凑合着看) qq:
--------------------------------------------------------------------------------------------------------------------PC实物截图如下 登录界面背景用HTML5特效自动切换(百叶窗,幕布等多种切换方式)650) this.width=650;" width="600" height="334" class="zoom" id="aimg_q8JOD"
src="/imgextra/i2//TB2j08bbFXXXXX9XXXXXXXXXXXX_!!.png" border="0" />650) this.width=650;" width="600" height="339" class="zoom" id="aimg_igCuQ"
src="/imgextra/i2//TB2L0lcbFXXXXXzXXXXXXXXXXXX_!!.png" border="0" />650) this.width=650;" width="600" height="356" class="zoom" id="aimg_y0b5X"
src="/imgextra/i4//TB2ENI9bpXXXXc4XXXXXXXXXXXX_!!.png" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_hI5Og"
src="/imgextra/i1//TB2F.GvcVXXXXauXXXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_wT4l3"
src="/imgextra/i2//TB20HSscVXXXXbrXXXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_d1RzW"
src="/imgextra/i1//TB25yChcpXXXXc4XXXXXXXXXXXX-.jpg" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_jBCtH"
src="/imgextra/i1//TB2FRgzcVXXXXadXXXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="487" height="216" class="zoom" id="aimg_o2x2r"
src="/imgextra/i1//TB2DPMjcVXXXXagXpXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_KrIJW"
src="/imgextra/i3//TB2ruf3cFXXXXXNXXXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_F49Hi"
src="/imgextra/i3//TB29tLFcFXXXXceXpXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_FJkdN"
src="/imgextra/i3//TB2T9tlcpXXXXcUXXXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_uY8Z8"
src="/imgextra/i2//TB2xKimcpXXXXaMXXXXXXXXXXXX-.jpg" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_UZY53"
src="/imgextra/i4//TB2BQmjcpXXXXb6XXXXXXXXXXXX-.jpg" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_YT4rA"
src="/imgextra/i3//TB2.T1dcpXXXXaTXpXXXXXXXXXX-.jpg" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_XS3Bz"
src="/imgextra/i2//TB204PicpXXXXbfXpXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_lUVO7"
src="/imgextra/i1//TB2qCzBcpXXXXbeXpXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_TWWIb"
src="/imgextra/i1//TB2ItvJcpXXXXckXXXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_IuhHt"
src="/imgextra/i1//TB2WnU8bpXXXXXfXpXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_g5E06"
src="/imgextra/i4//TB207JabFXXXXaAXXXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="600" class="zoom" id="aimg_JSKKb"
src="/imgextra/i4//TB2lKs9bpXXXXcBXXXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="600" height="382" class="zoom" id="aimg_brBQg"
src="/imgextra/i3//TB2RpSzdpXXXXXCXpXXXXXXXXXX-.png" border="0" />650) this.width=650;" width="600" height="476" class="zoom" id="aimg_UIa41"
src="/imgextra/i2//TB2ZtOKdpXXXXbXXXXXXXXXXXXX-.png" border="0" />& &QQ: 标签:&&&&&&&&&&&&&&&
&&国之画&&&& &&
版权所有 京ICP备号-2
迷上了代码!Spring+SpringMVC+MyBatis框架(SSM)是比较热门的中小型企业级项目开发的框架,对于新手来说也是比较容易学习入门的。虽说容易,但在框架搭建过程中仍然遇到了许多问题,因此用实例记录下来吧。
第一步&&导包
Spring框架包及其依赖包
MyBatis框架包及其依赖包
MyBatis-EhCache架包
MySql数据库驱动包
项目架包如下:
项目结构如下:
第二步&&整合Dao层(Spring+MyBatis)
sqlMapConfig.xml
&?xml version="1.0" encoding="UTF-8" ?&
&!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd"&
因为MyBatis交给Spring管理,因此Mapper在Spring中配置,这里的配置只打开二级缓存
applicationContext-dao.xml
&bean id="dataSource" class="com.mchange.boPooledDataSource"&
&property name="driverClass" value="com.mysql.jdbc.Driver" /&
&property name="jdbcUrl" value="jdbc:mysql://localhost:3306/db_pwc" /&
&property name="user" value="pwc" /&
&property name="password" value="123456" /&
&property name="maxPoolSize" value="20" /&
&property name="minPoolSize" value="1" /&
&property name="initialPoolSize" value="3" /&
&property name="maxIdleTime" value="15" /&
&bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"&
&property name="configLocation" value="classpath:sqlMapConfig.xml" /&
&property name="dataSource" ref="dataSource" /&
&bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"&
&property name="basePackage" value="cn.pwc.dao.mapper" /&
&property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" /&
1.该配置自动扫描单例化采用代理方式的Mapper,单例化的Mapper的bean名为Mapper接口第一个字母为小写的名。
2.千万要注意sqlSessionFactory的bean中的configLocation属性,其value值务必记得加上classpath:前缀,不然无法加载MyBatis配置文件
第二步&&整合Service层(Spring)
业务接口和业务实现
UserService.java
package cn.pwc.
import java.util.L
import cn.pwc.pojo.U
public interface UserService {
public void add(User user) throws E
public void delete(User user) throws E
public User getUserById(int id) throws E
public List&User& listUserByAge(int age) throws E
UserServiceBean.java
package cn.pwc.service.
import java.util.L
import javax.annotation.R
import org.springframework.stereotype.S
import org.springframework.transaction.annotation.T
import cn.pwc.dao.mapper.UserM
import cn.pwc.pojo.U
import cn.pwc.service.UserS
@Service @Transactional
public class UserServiceBean implements UserService{
@Resource(name="userMapper")
private UserM
public void add(User user) throws Exception {
mapper.insert(user);
public void delete(User user) throws Exception {
mapper.deleteById(user.getId());
public User getUserById(int id) throws Exception {
User user=
user=mapper.findById(id);
if(user==null){
throw new Exception("User is not existed!");
public List&User& listUserByAge(int age) throws Exception {
List&User& list=
list=mapper.findByAge(age);
if(list==null){
throw new Exception("List is empty!");
本实例采用自动扫描加载的方式,因此该业务bean需注解@Service
本实例交由Spring管理事务,因此该业务bean需注解@Transactional
applicationContext-service.xml
&context:component-scan base-package="cn.pwc.service" /&
第三步&&添加事务管理
applicationContext-transaction.xml
&bean id="txManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager"&
&property name="dataSource" ref="dataSource" /&
&tx:annotation-driven transaction-manager="txManager" /&
第四步&&整合视图层(SpringMVC)
springmvc.xml
采用mvc:annotation-driven标签自动装载视图控制器处理器解析器等
视图Controller(HelloController.java)
package cn.pwc.controller
该Controller类需注解@Controller
视图控制方法需注解@RequestMapping,作为url请求处理方法
第五步&&将所有配置装载到Spring容器中
&?xml version="1.0" encoding="UTF-8"?&
务必注意servlet-mapping中url-pattern属性值不能为/*
加载的配置文件路径必须有classpath:前缀
版权声明:本文为博主原创文章,未经博主允许不得转载。
(请您对文章做出评价)
上一篇: 下一篇:
最新IT新闻: &
最新知识库文章:
Views(...) Comments()查看: 495|回复: 10
EVGT淡若水.随心
没有strusts2,怎么搞权限
用Filter搞。配置一个过滤器先,做一个权限表再,权限依据为每项功能的url和用户/用户组,用户请求结合session和当前的url,来决定是否放行功能。如此一来,简单的权限需求已经可以适应了。、 http://www.oschina.net/question/96
我有Oracle的分页查询,应该是一样的,用的是ssm框架,内容太多,需呀的话联系我,下载地址 http://download.csdn.net/detail/u39799
SSM(Spring+SpringMVC+MyBatis)框架集由Spring、SpringMVC、MyBatis三个开源框架整合而成,常作为数据源较简单的web项目的框架。 其中spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。 SpringMVC分离了控制器、模型对象、分
dao是数据库接入层,这个是一个接口,implementsDao去实现这个接口,也就是按照接口中定义的方法取数据,Serveiec 也是一个接口,这个接口可以将不同的Dao放在同一个服务中,implementService 实现Service 。例如 我们有个JavaBean User 类,Cours
流程是这样的, 一个请求 达到 struts2 的Action 这个需要配置文件的,同时 这个Action 是由Spring来生成的,你需要在spring里配置action ,在Action里,你需要执行一些逻辑操作,可能会操作数据库,你可以用Hibernate来实现操作数据库的一些类
/WEB-INF/jsp/ .jsp
SSM应该是指Struts2或者Spring MVC+Spring+mybatis吧?第一问,不会报错,比如说你实现一个查询,只是说查出来结果为空而已。只要你程序能连上数据库,就不会出错。不过数据库是空的,但是那个库得有,只是说没数据而已。如果没那个数据库的话,
defined in file [D:\Workspaces\MyEclipse 10\.metadata\.me_tcat\webapps\SSM\WEB-INF\classes\applicationContext-common.xml 这里是问题的核心, 更具
controller是action类,怎么可以写sql,是放在dao里的

我要回帖

更多关于 tp框架怎么访问控制器 的文章

 

随机推荐