S2JH 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
S2JH 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
S2JH 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
S2JH 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
S2JH 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !

软件简介

重要说明:

当前Struts版本项目已暂停更新维护,转向Spring MVC版本的S2JH4Net:http://www.oschina.net/p/s2jh4net


Introduction

集结最新主流时尚开源技术的面向企业级Web应用的基础开发框架,提供一个J2EE相关主流开源技术架构整合及一些企业应用基础通用功能和组件的设计实现的最佳实践和原型参考。

以下两个站点代码和文档同步更新,请自由选择一个访问速度较快的站点即可:

同步镜像站点列表:

GitHub.com

OsChina.net

项目推广主页: http://www.oschina.net/p/s2jh

个人空间: http://my.oschina.net/s2jh

Features

  • 面向主流企业级WEB应用系统的界面和常用基础功能设计实现

  • 主体基于主流的SSH(Struts2+Spring3+Hibernate4)架构

  • 引入JPA、Spring-Data-JPA提升持久层架构规范性和开发效率

  • 基于流行JQuery/Bootstrap等UI框架和插件整合,良好的浏览器兼容性和移动设备访问支持

  • 提供一个基础分模块的代码生成框架,简化实现基本的CRUD功能开发

  • 基于Maven的项目和组件依赖管理模式,便捷高效的与持续集成开发集成

Snapshot

ui-signin

ui-layout

Snapshot View

Snapshot View

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (11)

加载中
前端 蛮好的 什么框架啊 s2jh
2013/11/01 11:36
回复
举报
很好 很强大 s2jh
2013/11/11 15:41
回复
举报
我还是喜欢spring MVC多过于s2 s2jh
2014/04/08 07:06
回复
举报
EntDIY软件作者
新增了一个S2JH WIKI页面:开发基础环境配置说明:http://git.oschina.net/xautlx/s2jh/wikis/DevCfg S2JH
2014/04/29 09:58
回复
举报
请问前端是基于metronic的哪个版本?我有该框架的商业授权,希望自定义一下,请问该如何做? S2JH
2014/05/12 18:24
回复
举报
EntDIY软件作者
S2JH系列分享:基于JasperReport+Applet的“可编辑”(套打)打印报表功能:http://www.oschina.net/question/151176_155892 S2JH
2014/05/21 18:02
回复
举报
EntDIY软件作者
S2JH 2.1.1 发布,基于SSH的企业Web应用开发框架 http://www.oschina.net/news/53454/s2jh-2-1-1 S2JH
2014/07/08 09:27
回复
举报
很好,但我下载的好像不是框架源码以及数据库表啊,请问哪里可以下载啊 S2JH
2014/07/30 15:02
回复
举报
我最想知道的就是jqgrid这个地方怎么实现的响应式的。代码地方没看明白。求解答。。。。 S2JH
2014/08/08 10:26
回复
举报
请问怎么进行数据库的初始化,有脚本吗 S2JH
2014/12/04 22:36
回复
举报
更多评论
发表了资讯
2014/07/21 00:00

S2JH 2.2.0 发布,基于SSH的企业Web应用开发框架

S2JH:基于SSH的企业Web应用开发框架。集结最新主流时尚开源技术的面向企业级Web应用的基础开发框架,提供一个J2EE相关主流开源技术架构整合及一些企业应用基础通用功能和组件的设计实现的最佳实践和原型参考。 在线演示地址:http://115.29.107.110/s2jh 特别说明:此演示应用部署在CPU单核512M内存1M带宽低配云服务器,并且第一次访问会初始化加载大量JS/CSS等静态资源文件,响应会比较慢需要耐心等待。有兴趣的朋友可参考 ht...

11
63
发表了资讯
2014/07/07 00:00

S2JH 2.1.1 发布,基于SSH的企业Web应用开发框架

S2JH:基于SSH的企业Web应用开发框架。集结最新主流时尚开源技术的面向企业级Web应用的基础开发框架,提供一个J2EE相关主流开源技术架构整合及一些企业应用基础通用功能和组件的设计实现的最佳实践和原型参考。 在线演示地址:http://115.29.107.110/s2jh 特别说明:此演示应用部署在CPU单核512M内存1M带宽低配云服务器,并且第一次访问会初始化加载大量JS/CSS等静态资源文件,响应会比较慢需要耐心等待。有兴趣的朋友可参考 ht...

17
48
发表了资讯
2014/07/04 00:00

S2JH 2.1.0 发布,基于SSH的企业Web应用开发框架

S2JH:基于SSH的企业Web应用开发框架。集结最新主流时尚开源技术的面向企业级Web应用的基础开发框架,提供一个J2EE相关主流开源技术架构整合及一些企业应用基础通用功能和组件的设计实现的最佳实践和原型参考。 在线演示地址:http://115.29.107.110/s2jh 主要变更如下: Master-Detail主子表数据交互处理 :http://git.oschina.net/xautlx/s2jh/wikis/Grid#master-detail%E4%B8%BB%E5%AD%90%E8%A1%A8%E6%95%B0%E6%8D%AE%E4%BA%...

24
76
发表了资讯
2014/06/23 00:00

S2JH 2.1.0.preview版本更新,基于SSH的企业Web应用开发框架

S2JH:基于SSH的企业Web应用开发框架。集结最新主流时尚开源技术的面向企业级Web应用的基础开发框架,提供一个J2EE相关主流开源技术架构整合及一些企业应用基础通用功能和组件的设计实现的最佳实践和原型参考。 在线演示地址:http://115.29.107.110/s2jh 主要变更如下: Master-Detail主子表数据交互处理 :http://git.oschina.net/xautlx/s2jh/wikis/Grid#master-detail%E4%B8%BB%E5%AD%90%E8%A1%A8%E6%95%B0%E6%8D%AE%E4%BA%...

24
49
发表了资讯
2014/04/07 00:00

S2JH全新2.0系初始版本发布,基于SSH的企业Web应用开发框架

趁着小长假整理一下代码和文档,虽然还有需要完善的地方,但是本着 "Done is better Perfect" 的原则,还是先放出S2JH全新2.0系初始版本发布,重大变更如下: 彻底改头换面的UI交互界面,先瞄一眼:https://github.com/xautlx/s2jh/wiki/UI 全面扩展增强的Grid表格组件:https://github.com/xautlx/s2jh/wiki/Grid 更好的浏览器兼容性和移动设备访问及集成支持:https://github.com/xautlx/s2jh/wiki/Mobile 敬请注意:本版本与...

21
44
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表于AI & 大数据专区
2015/11/10 11:48

S2JH Hibernate Lazy抓取策略--could not initialize prox

在做 图片上传 相关实体保存时,出现了该错误。 相关Entity     @OneToMany(mappedBy = "objectSid", cascade = CascadeType.ALL, orphanRemoval = true)     @OrderBy("orderIndex desc")     public List<ObjectR2Pic> getShopPagePics() {         return shopPagePics;     } Controller @Override     @MetaData("保存")     public HttpHeaders doSave() {       ...

0
0
发表了博客
2014/04/10 09:01

S2JH经验分享:控制jdbc:initialize-database与其他bean加载顺序

为了便于干净的初始化部署运行S2JH框架,采用了jdbc:initialize-database来从SQL脚本中初始化框架基础数据,其中遇到一个问题: 框架使用了Spring与Quartz集成以JDBC方式进行Cluster集群定时任务支持,其中一个需要提前准备的就是需要初始化好Quartz需要的相关数据表,但是按照默认设置Spring Scheduler始终会在jdbc:initialize-database之前就优先加载,导致spring scheduler加载过程抛出Quartz相关数据表Table Not Found的异常...

0
3
发表了博客
2014/04/29 08:46

S2JH新增WIKI页面:开发基础环境配置说明,基于SSH的企业Web应用开发框架

概要说明 以下以我本人实际开发环境为例,简要说明开发环境配置过程,供初学者参考。当然你也完全可以根据熟悉的开发工具和环境可自行参考调整配置。本说明仅对配置过程予以说明,其中涉及到诸如Maven,Git等工具的使用相关请自行通过其他渠道了解。 提示说明: 以下说明和截图以自己平时使用的Ubuntu 14 X64位操作系统环境,Windows和32位系统环境请注意对应调整安装软件版本和相关路径参数等。 JDK:JDK6 理论上JDK5+应该都可...

14
8
发表于AI & 大数据专区
2015/10/16 11:12

S2JH 自动审计@Audited 的问题

需要审计的实体在头部追加: @Audited 注解。 比如:商品实体需要做自动审计: @MetaData("商品") @Entity @Table(name = "commodity") @Cache(usage = CacheConcurrencyStrategy.NONE) @Audited public class Commodity 在商品实体关联的相关实体如不需要做自动审计则需要做@NotAudited 注解: 如商品属于的 品牌:     @OneToOne     @JoinColumn(name = "brand_SID")     @NotAudited     @JsonProp...

0
0
发表于AI & 大数据专区
2014/04/27 19:49

在Amazon AWS部署运行S2JH,IO次数异常分析

周末抽空注册申请了Amazon AWS的一年可用的“免费套餐”:http://aws.amazon.com/cn/free/ ,考虑为S2JH搭建一个在线的Demo运行样列。 (顺便提供一个经验分享:在注册过程中需要使用信用卡,还会以电话回拨方式进行身份验证,这个地方要注意等英语说完了才输入PIN码才能成功,前面几次我是以为像移动联通的自动语音系统一样无需等待电脑语音说完直接提前就输入,发现几次的验证失败,害我等了几个12小时验证限制期后才注册成功...

2
0
发表了博客
2013/11/21 10:10

为KindEditor图片批量上传功能添加排序支持

KindEditor有个图片批量上传是个很实用的功能,但是在使用过程发现一个问题:组件只提供一个“全部插入”按钮,一次性按照添加文件顺序一次性把所有图片依次插入编辑器,没法方便的调整插入图片的顺序。 经过一些代码分析,考虑采用集成JQuery UI Sortable特性为图片列表元素添加拖拉排序支持,但是由于KindEditor没有提供相关的回调方法,目前只能直接修改代码实现,具体在SWFUpload区域的appendFile方法最后添加如下代码: //...

0
8
发表于DevOps专区
2013/10/08 10:52

基于Hibernate Envers实现数据审计Audit操作记录

作为 S2JH: 基于SSH的企业Web应用开发框架 提供相关技术点介绍系列,一方面算是给出自己对某一个特定问题的设计实现思路分享供有兴趣朋友参考,另一方面也算是与大家一起探讨汲取各位同行更多更好的设计。更多框架相关技术文档可直接访问: https://github.com/xautlx/s2jh/wiki/Index -------------------------------------------正文部分-------------------------------------------- 概要说明 借助Hibernate Envers组件,实...

2
23
发表于软件架构专区
2015/06/26 11:11

基于Nutch&Solr定向采集解析和索引搜索的整合技术指南文档

如何阅读本文档 本教程文档原始基于Markdown编写,如果你熟悉Markdown文件及相关工具使用,可以直接通过Markdown阅读或编辑工具查看本教程.md格式文件。 由于Markdown语法暂时没有目录支持,如果希望以目录导航方式查看文档,可参考如下方式:在文档对应的.html格式文件上面右键选择 “Open with Microsoft Office Word”或直接用Word打开此文件,开启“文档结构视图”功能,显示文档内容模式大致如下: 总体介绍 文档内容说明 ...

3
2
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了问答
2014/07/22 17:12

JPA Criteria如何实现Wrapper一层count统计

在之前 http://www.oschina.net/p/s2jh 发布的wiki文档中提到分组统计功能,详见:http://git.oschina.net/xautlx/s2jh/wikis/Query#%E5%88%86%E7%BB%84-%E8%81%9A%E5%90%88-%E7%BB%9F%E8%AE%A1 目前有个不太完善的地方就是没有实现得到汇总查询的总记录数,也就没法友好的实现分页显示效果,目前只能退而求其次实现不断下翻页效果。 核心的问题在于:对于Native SQL或HQL等,一般常见的做法就是掐头去尾再追加包裹一层count语句...

3
0
发表了问答
2016/06/15 12:23

北京望京SOHO 4年Javaer 求坑

自学能力强。善于解决开发中的痛点。 略精通Java开发,熟悉各类常用技术,. 熟悉Oracle,MySql,SqlServer,能够熟练编写复杂sql,了解非关系型数据库。 熟练使用spring,hibernate,mybatis,springmvc进行项目开发。 熟练使用各种前端技术,bootstrap,ajax,js,jquery, html等。 熟练使用linux常用命令以及操作。具备Unix/Linux运维部署能力。 熟练使用各种版本管理工具,cvs/svn/git。 简历: http://job.oschina.net/r...

46
0
发表了问答
2014/05/21 08:52

S2JH系列分享:基于JasperReport+Applet的“可编辑”(套打)打印报表功能

S2JH项目首页:http://www.oschina.net/p/s2jh,集结最新主流时尚开源技术的面向企业级Web应用的基础开发框架,提供一个J2EE相关主流开源技术架构整合及一些企业应用基础通用功能和组件的设计实现的最佳实践和原型参考。 对应在线更新版本请访问S2JH文档页面:http://git.oschina.net/xautlx/s2jh/wikis/Report 概要说明 对于图表/报表,S2JH框架涉及如下几方面: Chart/Plot: 对于一些客户需要很炫的在线图表功能,虽然Flash不...

12
15
发表了问答
2015/07/30 17:14

S2JH ehcahe缓存和初始注册

@S2JH 你好,想跟你请教两个问题: 1.咱们框架对缓存的设置中有如下设置: <ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="ehcache.xsd" updateCheck="false" monitoring="autodetect" dynamicConfig="true" name="hibernateMytMyt"> 关于这个name的配置是否具有特殊性呢?在什么地方有其相关的配置吗? 2.我重新部署了一套新的S2JH 框架,登录的初始化数据怎么去整呢? 目前...

1
1
发表了问答
2015/07/20 15:16

Jpa 存储时不进行级联更新

@S2JH 你好,想跟你请教个问题: customer 和 shop 的主键互为对方的外键,多个customer可以对应同一个shop,代表shop拥有多个客服 和店长。一个shop只能对应一个customer,代表shop只能有一个店长。在customer类: @MetaData("美月淘集市店铺") private C2cShopInfo c2cShopInfo; @ManyToOne(cascade = CascadeType.DETACH) @JoinColumn(name = "c2c_shop_info_sid") @JsonProperty @Audited(targetAudi...

5
0
发表了问答
2015/06/01 13:49

S2JH不能实时获取数据库中更新的记录

@S2JH 你好,想跟你请教个问题: 是这样的,前台对数据进行了更新,然而在后台管理系统的详细编辑页面,刷新不能获取最新的数据记录,通过执行sql证实数据库中改记录已更新。重新启动服务后,数据才刷新成功,或是等待用户session失效后,重新登录后台系统,数据也可刷新成功。 网上搜索结果,有两种结果 一是hibernate没有清除缓存。而是hibernate默认连接池的问题。 请问您对这个问题了解吗?需要修改框架配置吗?...

2
0
发表了问答
2015/07/10 18:30

S2JH 日期类型属性的分组查询

@S2JH 你好,想跟你请教个问题: 咱们框架中有 基于分组和聚合属性返回Map结构分页数据 这么个函数 现在我 调用了 findByGroupAggregate("occureTime", "count(bizNum)", "bizNumType", "sum(amount)") 有个问题就是,DB 中 occureTime 日期格式 是 yyyy-mm-dd hh-mm-ss.....这样的。 我想统计的 是 每天的 流水金额 。 怎么 可以令属性occureTime 格式 是 yyyy-mm-dd 呢?有没有什么方法? 下面是生成的sql: SELECT   TOP (15)...

3
0
发表了问答
2015/07/06 18:28

S2JH 在 linux 环境下的配置

@S2JH 你好,想跟你请教个问题:大神linux环境下的配置文档有吗?希望大神能够弄一份

1
0
发表了问答
2015/05/29 09:54

S2JH jQuery 解析 controller setModel

@S2JH 你好,想跟你请教个问题: 我在前端使用ajax调用后端controller的findByPage: jQuery.ajax({ type : "get", url : WEB_ROOT + "/myt/activity/rule-template!findByPage?id=" + ruleTemplateId, 我想使用返回的对象,如何解析该对象呢? success : function(rowdata) { rowdata ??? }...

1
0
发表了问答
2014/12/09 11:09

根据配置说明配置启动时候出错

@S2JH 你好,想跟你请教个问题: maven install都成功完成. 启动server还是出错启动不起来. 11:06:29,831 |-INFO in ch.qos.logback.core.db.JNDIConnectionSource@188b41 - Looking up [java:comp/env/jdbc/s2jh] in JNDI 11:06:29,837 |-ERROR in ch.qos.logback.core.db.JNDIConnectionSource@188b41 - Error while getting data source javax.naming.NameNotFoundException: Name [jdbc/s2jh] is not bound in this Context...

2
0
发表了问答
2015/03/03 21:38

s2jh 在eclipse中部署到tomcat7下,报错

@S2JH 你好,想跟你请教个问题: ERROR in ch.qos.logback.core.db.JNDIConnectionSource@53edc6 - Error while getting data source javax.naming.NameNotFoundException: Name [jdbc/s2jh] is not bound in this Context. Unable to find [jdbc]. at javax.naming.NameNotFoundException: Name [jdbc/s2jh] is not bound in this Context. Unable to find [jdbc]. 部署启动tomcat7 报错 环境是按照您给的cfg页面上步骤进行的...

1
0
发表了问答
2015/01/15 13:24

S2JH 启动报错

@S2JH 你好,想跟你请教个问题: 信息: Starting Servlet Engine: Apache Tomcat/7.0.11 java.lang.IncompatibleClassChangeError: class org.springframework.scheduling.quartz.JobDetailBean has interface org.quartz.JobDetail as super class at java.lang.ClassLoader.defineClass1(Native Method) 怎么解决啊...

1
1
发表了问答
2014/10/24 16:46

S2JH 日期控件只显示时分秒(如图)

2
0
发表了问答
2014/08/29 11:30

s2jh导入出错?一直报如图所述的问题?

@S2JH 你好,想跟你请教个问题:请问,这是什么错,谢谢

2
0
发表了问答
2014/08/29 17:29

你好,今天导入后还是报错,如下图

@S2JH 你好,想跟你请教个问题: 后台报错: 工程目录结构: 谢谢!方便加下扣扣吗?604435477

2
0
发表了问答
2014/08/28 11:28

求教本地一键快速部署运行应用遇到的问题

@S2JH 你好,想跟你请教个问题: 我照着下面项目介绍的试了一下,结果提示:HTTP ERROR: 503 Problem accessing /s2jh. Reason: Service Unavailable。求教应该怎么操作避免这个问题呢?谢谢! 通过Git或其他方式获取到 https://github.com/xautlx/s2jh 后,先检查本地端口占用情况: 默认设置Jetty运行端口号为8080(如Oracle XE可能会使用此端口), 可修改quickstart.bat中参数调整 H2数据库采用缺省端口号,如果有运行H2实例,...

5
1
发表了问答
2014/08/27 15:22

S2JH可以导入到Intellij IDEA下开发吗?

@S2JH 你好,想跟你请教个问题:S2JH可以导入到Intellij IDEA下开发吗?

3
0
发表了问答
2014/07/30 16:24

请问s2jh如何修改mysql数据库看demo

@S2JH 你好,想跟你请教个问题:我想在mysql数据库上演示你的prototype,如何修改数据库配置,弄了好久没有成功,能不能详细解答一下,非常的感谢。还有多项目依赖那个开发有相关资料吗,我参考一下

4
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
11 评论
300 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部