欢迎访问小程序员!

首先,SSH不是一个框架,而是多个框架(struts+spring+hibernate)的集成,是目前较流行的一种Web应用程序开源集成框架,用于构建灵活、易于扩展的多层Web应用程序。 集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层(实体层)。 Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持。Spring一方面作为一个轻量级的IoC容器,负责查找、定位、创建和管理对象及对象之间的依 ....

一、一级缓存二级缓存的概念解释 (1)一级缓存就是Session级别的缓存,一个Session做了一个查询操作,它会把这个操作的结果放在一级缓存中,如果短时间内这个 session(一定要同一个session)又做了同一个操作,那么hibernate直接从一级缓存中拿,而不会再去连数据库,取数据; (2)二级缓存就是SessionFactory级别的缓存,顾名思义,就是查询的时候会把查询结果缓存到二级缓存中,如果同一个sessionFactory 创建的某个session执行了相同的操作,hibernate ....

principals即主体的标识属性,可以是任何东西,如用户名、邮箱等,唯一即可。credentials是证明/凭证,即只有主体知道的安全值,如密码/数字证书等。最常见的principals和credentials组合就是用户/密码了。 下面我们来看一个认证的例子,由于我们是用maven构建的实例,所以需要在pom.xml中添加依赖: <dependency>     <groupId>junit</groupId>     <artifactId>junit ....

Spring 内置了一个邮件发送器 JavaMailSenderImpl,可以用它来发送文本邮件、HTML 邮件并且发送附件。 具体详细的功能和简介这里就不多说了,直接带大家做一遍: 一段可运行的代码比说很多废话强得多 S1 :首先要保证项目当中使用 SPRING      Spring官网:  http://projects.spring.io/spring-framework/ S2:配置邮件参数文件 jdbc.properties(你懂的...偷个懒) #配置服务器邮件账号信息 #服务器 mail.s ....

有个问题困扰很久,一直没找出问题,今天准备在讨论区贴出来,寻求帮助,在整理问题的过程中,灵光一闪,好像忽然明白了问题所在。后来经过测试,确定无误。 犯错的具体经过就不一一敖述,怪不好意思的,怪自己不够聪明,思维僵化,总归一个字,笨。下面直接说问题根源 String hql = "update SysUser c set c.userStatus=:userStatus,c.userPass=:userPass,c.sysRole=:sysRole where c.userId=:userId&qu ....

一 if标签 <select id=" getStudentListLikeName " parameterType="StudentEntity" resultMap="studentResultMap">  SELECT * from STUDENT_TBL ST  <if test="studentName!=null and studentName!='' ">   WHERE ST.STUDEN ....

首先我们了解一个名词ORM,全称是(Object Relational Mapping),即对象关系映射。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现,这样开发人员就可以把对数据库的操作转化为对这些对象的操作。Hibernate正是实现了这种思想,达到了方便开发人员以面向对象的思想来实现对数据库的操作。                Hibernate在实现ORM功能的时候主要用到的文件有:映射类(*.java)、映射文件(*.hbm.xml)和数据库配置文件(*.properti ....

很多人在使用spring的Quartz配置定时任务时,会发现每次定时时间到达后,指定的定时方法同时执行了两次。 (P.S. 本人项目用的Jfinal搭建,同样出现该问题。)  解决quartz定时任务被触发两次的问题: 其中<Host/>告诉tomcat,在启动的时候加载webapps下的所有项目工程文件,<Context/>又让tomcat再加载了一遍(一般情况下配置<Context/>,主要是由于想域名访问时将工程名去掉的原因配置),这种情况下会导致工程中的quart ....

①拼写检查不同于其他域,它在建立索引时需要分词,但是检索时不需要分词,所以要建立一个特殊的域,以供拼写检查: 在schema.xml文件里设置所需的拼写检查域都有哪些字段:  <field name="spell" type="text_spell" indexed="true" stored="false" multiValued="true" /> <copyField source= ....

项目代码 http://git.oschina.net/for-1988/Simples Spring Scala 实践 Spring Scala 项目是Spring团队提供的,为了简化在 Scala 应用中使用 Spring 框架。我们相信很多 Spring 用户想尝试 Scala,但并不像放弃他们在 Spring 框架上的积累,这个项目就是为这些人准备的。目前的版本已经1.0.0.RC1,所以打算尝试一下。Spring Scala项目目前是基于spring 3.2.4.RELEASE 版本开发的 使用S ....

Quartz是一个大名鼎鼎的Java版开源定时调度器,功能强悍,使用方便。   一、核心概念   Quartz的原理不是很复杂,只要搞明白几个概念,然后知道如何去启动和关闭一个调度程序即可。   1、Job 表示一个工作,要执行的具体内容。此接口中只有一个方法 void execute(JobExecutionContext context)   2、JobDetail JobDetail表示一个具体的可执行的调度程序,Job是这个可执行程调度程序所要执行的内容,另外JobDetail还包含了这个任务调度的 ....

读取其它变量的时候可以直接用${变量名}来读取,但是当读取布尔类型的变量时,这种读取的方法就不行了会报错,得用以下这种方式   <input type="hidden" id="reportFlag" value="${reportFlag?string('true','false')}"/>  true或false代表类中对reportF ....

首先解释下图形学中的屏幕,窗口,视见区(视口),裁剪区。 屏幕:即计算机的整个屏幕大小。 窗口:即屏幕中的某一个窗口,可放大放小和移动关闭。 视口:即在窗口中可以见到或可以用来绘图的部分。一般设置视口等于窗口。 裁剪区:即在视口中让你看到的图形,即显示出来的那部分。   GLUT的窗口初始化是在main函数中使用 view sourceprint? 1.//初始化窗口位置 2.//x:距屏幕左边的像素大小 3.//y:距屏幕顶部的像素大小 4.extern void APIENTRY glutInitWin ....

首先, 看看我的项目的包结构, 用的IDEA13.1,gradle包管理工具, ...其他的就没什么可说的; 今天, 主要讲 generator 里面的东西; mysql的jar包是我自己贴过来的, 只要待会儿你能将路径指向它, 也没有问题; 第一步: 来看看 generator.xml 文件 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC  ....

一、前言     通过手动配置Struts项目,可以更好的了解Struts的运行原理。 二、资源 (一)Struts2。 三、步骤 (一)在MyEclipse中新建web项目MyProject (二)将Struts2资源中的struts-blank项目相关文件部署到MyProject 1.部署web.xml     将struts-blank项目的web.xml文件直接复制到MyProject的WEB-INF目录下。 2.部署struts2.xml     将struts-blank项目的web.xml文件 ....

一.在Spring配置文件中添加: <cache:annotation-driven/> 等价于: <!-- cacheManager为默认的缓存管理器名称 --> <cache:annotation-driven cache-manager="cacheManager"/> 二.添加bean文件:cacheManager <!-- spring自己的缓存管理器 --> <bean id="cacheManager" ....

Apache可移植运行时( Apache Portable Runtime,简称APR)是Apache HTTP服务器的支持库,提供了一组映射到下层操作系统的API。如果操作系统不支持某个特定的功能,APR将提供一个模拟的实现。这样程序员使用APR编写真正可在不同平台上移植的程序。 最初,APR是作为Apache HTTP服务器的一部分而存在的,但是Apache软件基金会将其延伸成一个单独的项目。其他的应用程序可以使用APR来实现平台无关性。 #!/bin/bash #LAMP_auto-install.s ....

框架-持久化专栏   (1) 输入参数为单个值 <delete id="com.fashionfree.stat.accesslog.deleteMemberAccessLogsBefore"    parameterClass="long">    delete from    MemberAccessLog    where    accessTimestamp = #value#    </delete>   (2) 输入参数为一个对象 ....

@SuppressWarnings("unchecked") public SimplePage WorkFlowEventDto listPage(WorkFlowEventDto condition, int start, int limit) { StringBuilder selectColumnSql = new StringBuilder("SELECT a.`id` as id,g.name as resourceType,b.name as insta ....

注解配置列的默认值     public void setViews(long views) {         this.views = views;     }     @Column(name = "views", columnDefinition = "bigint default 0")     public long getViews() {         return views;     } columnDefinition属性用于覆盖数据库DDL ....