现在Javajava微信开发框架都用那些框架?我是初学者我的项目就是用ssh写的行不?

想问大神们一般用SSH开发项目时,你们要写几个DAO以及实现类?【java吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:629,491贴子:
想问大神们一般用SSH开发项目时,你们要写几个DAO以及实现类?收藏
想问大神们一般用SSH开发项目时,你们要写几个DAO以及实现类?service以及实现类要写几个?以前做项目一直是一个数据表就写一套这样的dao啊service啊。但是后来我感觉太傻了,就封装了一个公用的,也谈不上封装吧,就是写了一个公用的不过也是只针对于我现在项目的,想听听大家开发时都是怎么弄的?
一个公共的,其他的都继承
dao层一般都是公用的,不然一个个pojo会写死的。
不知道,友情帮顶
其实主要是查询和调存储过程比较麻烦,不然service都可以封装的虽然这样不符合mvc的逻辑但是做起来确实很快的,不用每次建service;
* 这里是我封装的一个带分页属性的一个service,当然还有很多不足,但是一般的查询还是可以的
* 其中参数pageSize是每页显示多少条数据,currentPage是当前第几页;table是对应要查询的javabean名称
* manAnd是对应查询条件,and条件;manOr是对应查询条件,or条件;AndIsOr是连接俩组条件之间是用or
* 还是and ;如果需要排序的话order是需要根据那个字段排序,最后的descOrasc应该很明白了是升序还是降序;
* 不需要排序的话最后的俩个参数可以直接传一个“”进去,
*这里我说下map是条件 map的加入条件的时候Key对应的是字段名称 value是对应的值,不需要条件的new俩个空的map 进去就可以的,其实说白了这个方法就是自动拼接Hql语句的;很多不足地方,例如查询都是模糊查询,也可以封但是感觉参数太多了,我现在用一般都是模糊就没弄,大家提点意见看看有什么更好的办法
* */public Page pageQueryAndOr(int pageSize, int currentPage,
String table, Map&String, Object& mapAnd,
Map&String, Object& mapOr, String AndIsOr,
String order, String descOrasc) {
boolean isKeyAnd=
boolean isKeyOr=
StringBuffer Hqlbuffer=new StringBuffer("from "+table+"");
StringBuffer countHqlbuffer=new StringBuffer("select count(*)
from "+table+"");
for(Object o:mapAnd.keySet()){
if(mapAnd.get(o)!=null&&!mapAnd.get(o).equals("")){
for(Object o:mapOr.keySet()){
if(mapOr.get(o)!=null&&!mapOr.get(o).equals("")){
if(isKeyAnd||isKeyOr){
Hqlbuffer.append(" where ");
countHqlbuffer.append(" where ");
if(isKeyAnd){
Hqlbuffer.append("(");
countHqlbuffer.append("(");
for(Object o:mapAnd.keySet()){
if(mapAnd.get(o)!=null&&!mapAnd.get(o).equals("")){
Hqlbuffer.append(" "+o+" like '%"+mapAnd.get(o)+"%' and ");
countHqlbuffer.append(" "+o+" like '%"+mapAnd.get(o)+"%' and ");
Hqlbuffer.delete(Hqlbuffer.lastIndexOf("and"), Hqlbuffer.length());
countHqlbuffer.delete(countHqlbuffer.lastIndexOf("and"), countHqlbuffer.length());
Hqlbuffer.append(" ) ");
countHqlbuffer.append(" ) ");
if(isKeyOr){
Hqlbuffer.append(AndIsOr);
countHqlbuffer.append(AndIsOr);
if(isKeyOr){
Hqlbuffer.append("(");
countHqlbuffer.append("(");
for(Object o:mapOr.keySet()){
if(mapOr.get(o)!=null&&!mapOr.get(o).equals("")){
Hqlbuffer.append(" "+o+" like '%"+mapOr.get(o)+"%' or ");
countHqlbuffer.append(" "+o+" like '%"+mapOr.get(o)+"%' or ");
Hqlbuffer.delete(Hqlbuffer.lastIndexOf("or"), Hqlbuffer.length());
countHqlbuffer.delete(countHqlbuffer.lastIndexOf("or"), countHqlbuffer.length());
Hqlbuffer.append(" ) ");
countHqlbuffer.append(" ) ");
if(order!=null&&!order.equals("")){
if(descOrasc!=null&&!descOrasc.equals("")){
Hqlbuffer.append(" order by "+order+" "+descOrasc);
Hql=Hqlbuffer.toString();
countHql=countHqlbuffer.toString();
System.out.println(Hql);
System.out.println(countHql);
return newCsmpDao.pageQuery(pageSize, currentPage, Hql, countHql);
//对应Dao层实现类的方法public Page pageQuery(final int pageSize,final int currentPage,
final String Hql,final String countHql) {
// TODO Auto-generated method stub
Session session=getSession();
Query countQuery=session.createQuery(countHql);
long countL =(Long)countQuery.list().get(0);
int count=(int)countL;
System.out.println(count);
Query query=session.createQuery(Hql);
query.setFirstResult((currentPage-1)*pageSize);
query.setMaxResults(pageSize);
list= query.list();
page=pageUtil.Topage(pageSize, currentPage, list, count);
登录百度帐号推荐应用用Java开发项目的时候,三大框架是一起使用的多还是分开使用的多?
本回答由提问者推荐学习SSH框架需要哪些Java基础知识? - 知乎132被浏览13391分享邀请回答10添加评论分享收藏感谢收起31 条评论分享收藏感谢收起更多1 个回答被折叠()}

我要回帖

更多关于 android 开发框架 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信