java中跳转页面的干法_java – 有没有一种干法来整合RowMappers的相同代码?
我正在使用JDBC,我的许多类都有一个内部RowMapper类,如下所示:
public class Foo {
class AppleRows implements RowMapper {
public Apple mapRow(ResultSet rs, int rowNum) throws SQLException {
Apple a = new Apple();
a.setName(rs.getString("Name"));
}
}
class AppleRowsJoinedWithSomethingElse implements RowMapper {
public Apple mapRow(ResultSet rs, int rowNum) throws SQLException {
Apple a = new Apple();
a.setName(rs.getString("Name"));
a.setSomethingElse(rs.getString("SomethingElse"));
}
}
}
在上面的示例中,行a.setName(rs.getString(“Name”))正在被复制.这只是一个例子,但在我的实际代码中有超过10个这样的字段.我想知道是否有更好的方法来做到这一点?
注意:我需要不同的映射器,因为我在一些地方使用它们,我正在将结果与另一个表(获取更多字段)联系起来.
最佳答案 你可以扩展使用super.mapRow()…
public class Foo {
class AppleRows implements RowMapper {
public Apple mapRow(ResultSet rs, int rowNum) throws SQLException {
Apple a = new Apple();
a.setName(rs.getString("Name"));
return a;
}
}
class AppleRowsJoinedWithSomethingElse extends AppleRows {
public Apple mapRow(ResultSet rs, int rowNum) throws SQLException {
Apple a = super.mapRow(rs, rowNum);
a.setSomethingElse(rs.getString("SomethingElse"));
return a;
}
}
}
或者只是委托,如果你不喜欢使用继承作为代码重用的机制:
public class Foo {
class AppleRows implements RowMapper {
public Apple mapRow(ResultSet rs, int rowNum) throws SQLException {
Apple a = new Apple();
a.setName(rs.getString("Name"));
return a;
}
}
class AppleRowsJoinedWithSomethingElse implements RowMapper {
public Apple mapRow(ResultSet rs, int rowNum) throws SQLException {
Apple a = new AppleRows().mapRow(rs, rowNum);
a.setSomethingElse(rs.getString("SomethingElse"));
return a;
}
}
}
java中跳转页面的干法_java – 有没有一种干法来整合RowMappers的相同代码?相关推荐
- java中跳转页面的两种方法_页面跳转的几种方式
页面跳转的几种方式: --------------(网络收藏) http头实现页面跳转: out.println(""); content是指跳转的时间间隔,单位为秒 ------ ...
- java语言如何跳转界面_在java中spring mvc页面如何跳转,详细图解
众所周知,java编程语言的应用在当今社会必不可少,它是当下人们提升自己充实自身的重要选择.所以,今天主要来为大家介绍java的入门知识,在 java中spring mvc页面如何跳转,通过详细的图片 ...
- 在拦截器中跳转页面和全局的loading且修改loading的图标
一般axios请求会进行封装,封装的文件中会对拦截器.错误码.全局的loading等做相应的处理. 一.全局loading的实现如下: 在request拦截器中添加loading的配置 import ...
- java登录跳转页面
java登录跳转页面 java文件的编辑方式,任意文本加.java后缀即可,一个java文件只能有一个主类,用public调用,如果要打包成程序包,每个文件前先声明包命,如com.QQH,调试单个文件 ...
- java中字母用什么单词赋值_Java初学
Java-SUN 语言平台J2SE(桌面) ,J2ME(移动被安卓所取代),J2EE(企业主要用于web) 1.跨平台(操作系统)原理: 在任意操作系统上运行,一次编写到处运行. 依赖JVM(Java ...
- 在java中的交换方法有哪些_java中交换两个变量的值有哪几种方法,交换两个变量a和b的值...
java中交换两个变量的值有哪几种方法在Java中,有哪些方法可以交换两个变量的值, 方法: 1.定义临时变量 2.没有必要定义临时变量 3.使用位运算符 (学习视频分享:java课程) 代码示例: ...
- java后台跳转页面实现方式
总结: java后台跳转 @Controller下return一个String类型的跳转链接 注意:如果是@RestController注解下的controller,会将返回的字符串自动包进一个req ...
- java中基本字节输出流类是_java中基本输入输出流的解释
网络程序的很大一部分是简单的输入输出,即从一个系统向另一个系统移动字节.字节就是字节,在很大程度上,读服务器发送的数据与读取文件没什么不同:向客户传送数据与写入一个文件也没有什么区别. Java中输入 ...
- Asp.Net中跳转页面有那几种方法
一.方法 1.<a href="Default.aspx">跳转</a> 2.<asp:HyperLink id="HyperLink1&q ...
最新文章
- boost::gil::promote_integral用法的测试程序
- 作为餐饮店长最需要什么能力?
- 【学习笔记】计算机导论之计算机软件
- interpolation algorithm
- OpenJDK8-u302-b03哪里去也?
- 4×4键盘板:ATMEGA328接口
- 文件的输入法程序的字符编码
- 篮球c语言程序,源程序C代码:篮球比赛应用系统
- 如何制作小游戏(c++教程)(新手版)(1)
- java实现图片平铺倾斜水印效果--转载
- moviepy图片合成视频
- apple id两步验证服务器,如何开启 Apple ID 两步验证
- 如何在CAD中加载卫星地图并作街道与建筑绘制
- JavaScript获取元素下标的几种方法
- MMsegmentation教程1:学习配置文件
- 如何快速体验腾迅信鸽推送
- pic单片机配置字c语言,PIC单片机配置字说明及使用.pdf
- 以己之心,度人之心;将心比心,便是佛心
- SQL server 重复数据处理 (根据条件筛选符合merge的数据)
- 关于Verilog HDL的一些技巧、易错、易忘点
热门文章
- MySQL DBA面试高频三十问
- 实战演练:通过伪列、虚拟列实现SQL优化
- 边缘计算是流行词还是风口?开发者怎样选开源项目?
- 六步带你完成博流wifi模组对接华为云流程
- 使用体验神似VS Code?三步带你了解华为云CloudIDE前世今生
- 深入比特币原理(四)——锁定脚本(locking script)与解锁脚本(unlocking script)
- 【华为敏捷/DevOps实践】3. 如何开好站立会议
- 迷宫问题c语言报告,c语言写的迷宫问题
- BroadcastReceiver之动态广播 demo+笔记
- Android笔记 使用AIDL和远程服务实现进程通信