mysql如何在一个表中插入数据的同时,更新另一个表的数据?
来源:互联网 发布:淘宝店麻辣小黑粉 编辑:程序博客网 时间:2024/05/16 21:18
三种方案,你看看哪个比较适合你
1,适用于学生: 写两个方法,一个新增一个更新,在新增完了以后马上去查询一下,按主键倒叙排列,取到最新插入的id,前提主键是自增的且不是uuid,然后把查到的主键返回出去作为形参让更新方法接收到,然后更新即可.
2,适用于ssh框架: 写两个事务,事务的传播特性是REQUIRED.添加的事务实现序列化(synchronized)
public Serializable Long saveOoxx(Object obj){
// 之前已有session工厂工具类,直接拿即可,不用另开
Session session = getSession();
// 对象封装 略...
Serializable oId = session.save(obj);
// 具体业务逻辑 略...
return (Long)oId; // 把这个扔出去就可以了
// 为什么一定要实现序列化?看java基础,百度会告诉你的
}
save之后返回值就是你之前save进数据库表的主键,将他返回出来,传给update事务,更新即可
3,适用于中高端人士,也是现在主流的解决方案,基础没过关的请参考1.2:配置一个触发器,以下我只简单介绍一下时间类触发器,具体应用还是自己想办法吧,不能全说了.....
<bean id = "你自己的工作类" class = "包名.类名.方法名"></bean>
<!-- 定义调用对象和调用对象的方法 -->
<bean id="jobTask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<!-- 调用的类 -->
<property name="targetObject">
<ref bean="quartzJob"/>
</property>
<!-- 调用类中的方法 -->
<property name="targetMethod">
<value>work</value>
</property>
</bean>
<!-- 定义触发时间 -->
<bean id="doTime" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail">
<ref bean="jobTask"/>
</property>
<!-- cron表达式 -->
<property name="cronExpression">
<!-- 30分钟一次 -->
<value>0 */30 * * * ? </value>
</property>
</bean>
<!-- 最后需要配置一个总管理类 -- >
<!-- lazy-init="false"则容器一旦被实例化则自动开始计时 -- >
<bean id="startQuartz" lazy-init="false" autowire="no class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="doTime"/>
</list>
</property>
</bean>
1,适用于学生: 写两个方法,一个新增一个更新,在新增完了以后马上去查询一下,按主键倒叙排列,取到最新插入的id,前提主键是自增的且不是uuid,然后把查到的主键返回出去作为形参让更新方法接收到,然后更新即可.
2,适用于ssh框架: 写两个事务,事务的传播特性是REQUIRED.添加的事务实现序列化(synchronized)
public Serializable Long saveOoxx(Object obj){
// 之前已有session工厂工具类,直接拿即可,不用另开
Session session = getSession();
// 对象封装 略...
Serializable oId = session.save(obj);
// 具体业务逻辑 略...
return (Long)oId; // 把这个扔出去就可以了
// 为什么一定要实现序列化?看java基础,百度会告诉你的
}
save之后返回值就是你之前save进数据库表的主键,将他返回出来,传给update事务,更新即可
3,适用于中高端人士,也是现在主流的解决方案,基础没过关的请参考1.2:配置一个触发器,以下我只简单介绍一下时间类触发器,具体应用还是自己想办法吧,不能全说了.....
<bean id = "你自己的工作类" class = "包名.类名.方法名"></bean>
<!-- 定义调用对象和调用对象的方法 -->
<bean id="jobTask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<!-- 调用的类 -->
<property name="targetObject">
<ref bean="quartzJob"/>
</property>
<!-- 调用类中的方法 -->
<property name="targetMethod">
<value>work</value>
</property>
</bean>
<!-- 定义触发时间 -->
<bean id="doTime" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail">
<ref bean="jobTask"/>
</property>
<!-- cron表达式 -->
<property name="cronExpression">
<!-- 30分钟一次 -->
<value>0 */30 * * * ? </value>
</property>
</bean>
<!-- 最后需要配置一个总管理类 -- >
<!-- lazy-init="false"则容器一旦被实例化则自动开始计时 -- >
<bean id="startQuartz" lazy-init="false" autowire="no class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="doTime"/>
</list>
</property>
</bean>
0 0
- mysql如何在一个表中插入数据的同时,更新另一个表的数据?
- 如何在一个update语句中,用一个表的数据更新另一个表的数据
- 在mysql中如何使用一个表中的数据去更新另外一个表的数据
- mysql查询一个表的数据插入另一个表
- SQL如何将一个表的数据插入另一个表
- MySQL里用一个表的数据更新另一个表
- 将一个表的数据插入到另一个表中
- mysql触发器在一个表上插入的同时修改本表的数据
- MySQL把一个表的数据插入到另一个表中应用
- MySql中把一个表的数据插入到另一个表中的实现代码
- MySql中把一个表的数据插入到另一个表中的实现代码
- MySql中把一个表的数据插入到另一个表中的实现代码
- MySql中把一个表的数据插入到另一个表中的实现代码
- MySql中把一个表的数据插入到另一个表中的实现
- MySql中把一个表的数据插入到另一个表中的SQL语句
- MySql中把一个表的数据插入到另一个表中的实现代码
- 关于如何将一个数据库中的表的数据插入另一个数据库中
- mysql 将一个表的一列数据更新到另一个表中
- web前端知识汇总-浏览器兼容(主要IE)
- VS2010MFC之网络编程——添加链接器
- 欢迎使用CSDN-markdown编辑器
- Verilog基础知识6(数字IC设计的完整流程(非常详细!))
- 浅谈try catch finally
- mysql如何在一个表中插入数据的同时,更新另一个表的数据?
- myBatis动态sql
- EditPlus 注册码
- 网易云捕:一款iOS平台下方便好用的崩溃收集统计系统
- python 字典常见方法
- 使用ISAPI过滤器开发来增强IIS的功能
- Netstat 的10个基本用法
- 欢迎使用CSDN-markdown编辑器
- js中控制Html元素