`
i2534
  • 浏览: 182950 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

简单的通过注解运行的dao

    博客分类:
  • util
阅读更多

项目是个老项目,是个比较简单,但是编码比较凌乱的项目.数据库字段设计的比较长,还是中文拼音,没有区分大小写.

这两天改sql部分的代码.感觉要崩溃了.但是不能换掉这部分,因为这里还耦合了json等一堆东西,换了还不如重写.

这也是程序员的悲剧.

于是自己写了个sql拼接,并写了个简单的dao.

其实这是个吃力不讨好的工作,但是毕竟是个有用的东西,所以放上来.

觉得这个东西不够用的,可以去找下Nutz(我比较喜欢这个),我这个东西参考了一下它,实现query时简单的where和order.

请要投新手和隐藏的同学看一下使用范围和读者群,高抬贵手,我只是不想再做一次选择题,谢谢!

好吧,写上红字也挡不住你们投隐藏的热情,那我就把红字删了吧.

适用范围:

  • 数据表的字段比较长并且难写.
  • 数据表之间没有什么过多的主外键关系.
  • 数据量不大
  • vo和表有对应
  • 不能使用流行的orm工具
  • 对性能没有过分要求,并且不鄙视反射

读者群:

  • 对反射和注解有兴趣的人
  • 和我有一样烦恼的人

现在query有了一个简单的条件查询.其他操作可以参照添加

现在dao中获取数据库连接是一个抽象方法,不用每次操作都去pool中取了.

 

源代码zip包在最后

 

 

  • src.zip (10.6 KB)
  • 下载次数: 840
分享到:
评论
23 楼 jinceon 2011-05-16  
到现在为止还不知道怎样投票
22 楼 fortianwei 2011-01-30  
挺不错的。
21 楼 laolinshi 2011-01-28  
glamey 写道
i2534 写道
谢谢各位的回复.今天上最后一点就可以回家了.
明年来,管他隐藏呢.隐藏,新手神马的,最讨厌了.
88了各位.


爽啊,我需要30号再来一天。

我1号都还要来啊,悲剧!
20 楼 xuxin012 2011-01-28  
31日 1日还要来的杯具
19 楼 glamey 2011-01-28  
i2534 写道
谢谢各位的回复.今天上最后一点就可以回家了.
明年来,管他隐藏呢.隐藏,新手神马的,最讨厌了.
88了各位.


爽啊,我需要30号再来一天。
18 楼 i2534 2011-01-28  
谢谢各位的回复.今天上最后一点就可以回家了.
明年来,管他隐藏呢.隐藏,新手神马的,最讨厌了.
88了各位.
17 楼 smzd 2011-01-28  
大家讨论这等问题不一定非要在这里嘛,这里总被封,一次次做选择题,没心情陪他们,他们也没心情来看。oschina.net是个不错的地方,建议去那里看看。这里可以作为提高,来观摩大牛的。
16 楼 ak121077313 2011-01-27  
有些人真是,纱布垃圾的充大牛点点新手和隐藏 也不看看自己几斤几两,贡献过什么东西
15 楼 ak121077313 2011-01-27  
yangguo 写道
i2534 写道
southgate 写道
不错

乱投新手贴的人很烦 基础的东西为什么都不能讨论了。

我不怕被隐藏,就是被隐藏后需要从新做题才能发言.
我做了两次,遗憾的是两次都必须重做5+以上才通过....


你也太菜了。我早就练成一遍通过了。这是发表隐藏贴的必备技能。
忽发奇想,用程序来把这个题做了。


我3个号都一遍通过了。。。
14 楼 i2534 2011-01-27  
peterwei 写道
i2534 写道
peterwei 写道
哈哈。javaeye就这样,基础和入门的在新手版里发。要不然被投新手。我以前经常被投新手。不过隐藏的很少有人投,只样你不要太让人反感。比如杨过同学,很多人对他都先入为主了。

其实每次我都在怀疑,这里的大牛真的就那么多?
我现在发的应该不算新手的东西啦.

哈哈,何必管别人是不是牛。投新手和隐藏的人和你我都一样。你想想为什么有人投,就是因为他觉得简单或其它原因。你发这个东西,在于自我总结。我永远认为自我总结,并把东西讲给别人,让别人清楚,是对自已最好的一个提高。

ps:这里牛还是很多的,以前更多。

将给别人,....我说话比较语无伦次,说的越多,别人越不明白,所以我习惯给代码加doc....
13 楼 peterwei 2011-01-27  
i2534 写道
peterwei 写道
哈哈。javaeye就这样,基础和入门的在新手版里发。要不然被投新手。我以前经常被投新手。不过隐藏的很少有人投,只样你不要太让人反感。比如杨过同学,很多人对他都先入为主了。

其实每次我都在怀疑,这里的大牛真的就那么多?
我现在发的应该不算新手的东西啦.

哈哈,何必管别人是不是牛。投新手和隐藏的人和你我都一样。你想想为什么有人投,就是因为他觉得简单或其它原因。你发这个东西,在于自我总结。我永远认为自我总结,并把东西讲给别人,让别人清楚,是对自已最好的一个提高。

ps:这里牛还是很多的,以前更多。
12 楼 i2534 2011-01-27  
peterwei 写道
哈哈。javaeye就这样,基础和入门的在新手版里发。要不然被投新手。我以前经常被投新手。不过隐藏的很少有人投,只样你不要太让人反感。比如杨过同学,很多人对他都先入为主了。

其实每次我都在怀疑,这里的大牛真的就那么多?
我现在发的应该不算新手的东西啦.
11 楼 peterwei 2011-01-27  
哈哈。javaeye就这样,基础和入门的在新手版里发。要不然被投新手。我以前经常被投新手。不过隐藏的很少有人投,只样你不要太让人反感。比如杨过同学,很多人对他都先入为主了。
10 楼 i2534 2011-01-27  
L--A--N--G 写道
呵呵 。。这几天也在做和楼主差不多的东东呢

可以互相借鉴,互相进步啊
9 楼 i2534 2011-01-27  
yangguo 写道
i2534 写道
southgate 写道
不错

乱投新手贴的人很烦 基础的东西为什么都不能讨论了。

我不怕被隐藏,就是被隐藏后需要从新做题才能发言.
我做了两次,遗憾的是两次都必须重做5+以上才通过....


你也太菜了。我早就练成一遍通过了。这是发表隐藏贴的必备技能。
忽发奇想,用程序来把这个题做了。

写出来记得分享啊,此程序一出,天下折服!
8 楼 yangguo 2011-01-27  
i2534 写道
southgate 写道
不错

乱投新手贴的人很烦 基础的东西为什么都不能讨论了。

我不怕被隐藏,就是被隐藏后需要从新做题才能发言.
我做了两次,遗憾的是两次都必须重做5+以上才通过....


你也太菜了。我早就练成一遍通过了。这是发表隐藏贴的必备技能。
忽发奇想,用程序来把这个题做了。
7 楼 L--A--N--G 2011-01-27  
呵呵 。。这几天也在做和楼主差不多的东东呢
6 楼 i2534 2011-01-27  
bnmcvzx 写道
测试下论坛回复

谢谢贡献人气.
5 楼 i2534 2011-01-27  
neverforget 写道
下来看过了 很不错

注解,反射和原生JDBC的一套ORM 和 COMMON DAO


+1良好

谢谢.
这东西,比较小众,难得有人给出不错的评价.
4 楼 i2534 2011-01-27  
southgate 写道
不错

乱投新手贴的人很烦 基础的东西为什么都不能讨论了。

我不怕被隐藏,就是被隐藏后需要从新做题才能发言.
我做了两次,遗憾的是两次都必须重做5+以上才通过....

相关推荐

    SSH环境 注解方式 包含jar 简单实例 直接运行

    本教程将通过注解方式,提供一个简单的SSH应用实例,可以直接运行。 首先,让我们详细了解SSH框架的核心组件: 1. **Struts2**:这是一个基于MVC设计模式的Java Web框架,它简化了创建用户交互层的工作。Struts2...

    Java 使用注解拼接SQL语句

    - 尽量保持注解的简单和清晰,避免在注解中包含过于复杂的逻辑。 - 使用预编译的SQL语句以防止SQL注入攻击。 - 注意注解的保留策略,如`RetentionPolicy.RUNTIME`可以让运行时访问注解信息,但会增加类文件大小。...

    java好用的dao

    通过简单的配置和注解,AutoDAO可以自动生成与数据库表对应的DAO类,支持多种数据库操作,易于与现有框架集成。对于Java开发者来说,了解并熟练使用AutoDAO可以提升开发效率,降低项目的维护成本。

    spring famework 基于注解配置示例

    例如,我们可以定义一个简单的服务类,并用`@Component`注解标记: ```java @Component public class MyService { // ... } ``` 2. `@Autowired`:用于自动装配bean的依赖。当Spring扫描到这个注解时,它会...

    Mybatis-Generator自动生成Dao、Model、Mapping直接可运行

    这个压缩包文件"**MybatisGenerator**"提供了一个预先配置好的环境,使得用户只需进行简单的设置就可以直接运行。 1. **Mybatis-Generator简介** Mybatis-Generator是Mybatis框架的一个插件,能够根据数据库表结构...

    springmvc+jdbctemplate+mysql(采用注解方式)

    例如,一个简单的JdbcTemplate查询可能使用`@Repository`注解的类,其中的方法用`@Query`注解来执行SQL语句。 **MySQL** MySQL是一款广泛使用的开源关系型数据库管理系统。它的特点是速度快、稳定性好且易于使用。...

    springmvc+hibernate注解框架整合 demo

    - **动态性**:Spring通过扫描和处理注解,可以在运行时自动发现和装配组件。 在这个"springmvc+hibernate注解框架整合 demo"项目中,你可以看到所有这些概念的实际应用,包括如何配置和使用注解来实现Spring MVC和...

    JAVA反射的实现(使DAO层变得更加简单)

    5. **注解处理**:Java的注解机制可以与反射相结合,例如,我们可以定义一个`@Table`注解标识数据库表,`@Column`注解标识表字段,通过反射解析这些注解,自动生成SQL语句。 6. **动态SQL**:结合Java反射和OGNL...

    seasar框架S2Dao使用指南

    4. **JavaBeans**:JavaBeans类用于表示数据库中的表,通过注解(如@Table、@Column等)声明字段与表字段的对应关系,以及getter和setter方法。 5. **DAO接口**:DAO接口定义了对数据库操作的方法,每个JavaBeans...

    ssh开发最简单的注解版增删改查,数据库在里面,分层清晰,供大家学习用

    在SSH项目中,Hibernate通过注解方式简化了数据访问对象(DAO)的编写。比如,`@Entity`注解标记实体类,`@Table`指定数据库表名,`@Id`和`@GeneratedValue`定义主键及其生成策略。对于字段,`@Column`用于映射...

    小型web程序实例DAO

    在IT行业中,DAO(Data Access Object)模式是一种常见的软件设计模式,主要用于数据库访问。...通过分析和运行这个项目,开发者可以深入理解DAO模式在实际项目中的应用,并提升其在Web开发中的技能。

    java 里 自动生成 dao 工具的代码

    通过Hibernate的逆向工程工具,可以基于现有的数据库模式自动生成实体类、DAO接口和实现类,大大减少了手动编码的工作量。 2. **MyBatis**:MyBatis是一个轻量级的ORM框架,它的特点是将SQL语句写在XML配置文件或者...

    DAO概念及实现方式,清晰易懂,容易上手

    开发者不需要编写显式的事务处理代码,而是通过配置文件或注解来声明事务属性。这种方式减少了编程量,提高了开发效率,同时降低了错误发生的概率。在Java中,JTA(Java Transaction API)就是用来实现声明式事务...

    @Commponent注解HelloWorld示例

    本示例旨在介绍如何通过`@Component`注解实现一个简单的"HelloWorld"应用,这在Spring 3.1版本中就已经支持。下面我们将深入探讨`@Component`注解及其相关概念。 1. **什么是@Component注解** `@Component`是...

    注解反射生成SQL语句

    例如,我们可以创建一个自定义的处理器,该处理器会在编译期间检查带有特定注解的类,并自动生成相应的DAO(数据访问对象)类,这些DAO类已经包含了基于注解信息生成的SQL方法。 总的来说,结合注解和反射,开发者...

    自动生成entity和dao层

    增删改查(CRUD)操作可以通过简单的标签实现,例如`<insert>`, `<select>`, `<update>` 和 `<delete>`,使得数据库操作变得更加简洁和高效。 在实际开发中,使用这样的自动化工具可以显著减少编写重复代码的时间,...

    SSH框架注解事例

    在学习过程中,可以通过实际操作,比如创建一个简单的SSH项目,使用注解进行配置,编写Action、Service和DAO层,以及对应的实体类,进一步巩固对这些知识点的理解。 通过trainzj文件中的示例,你可以逐步学习并实践...

    2016年javaWeb学习SSH注解整合例子demo

    7. **实战示例**:`SpringTest7_sshannotation`这个文件可能是本次学习示例的源代码,包含了Struts2、Spring和Hibernate的整合示例,通过注解的方式实现一个简单的CRUD应用。学习者可以通过阅读和运行这个项目,了解...

    springMVC+注解方式连接数据库

    在SpringMVC中,我们通常使用@Autowired注解来自动装配依赖,例如数据库连接池(如Druid或HikariCP)和数据访问对象(DAO)。这样,Spring容器会在运行时自动为这些bean提供所需的依赖,极大地简化了配置。 接着,...

    eclipse+SSH全注解标签实现登录

    本教程将详细讲解如何利用Eclipse和SSH框架,通过全注解的方式实现一个简单的登录功能,无需XML配置。 首先,我们需要了解SSH框架的各自职责: 1. **Struts2**:作为MVC(Model-View-Controller)框架,负责处理...

Global site tag (gtag.js) - Google Analytics