V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  forreal  ›  全部回复第 3 页 / 共 5 页
回复总数  97
1  2  3  4  5  
2015-02-04 23:21:57 +08:00
回复了 xiaoxinsng 创建的主题 问与答 这种情况,如果告银行能获得一定赔偿吗
给我打电话的号码是13143426514,然后我上搜狗上一查http://haoma.sogou.com/rz/search_result.php?target_number=13143426514&message=%E8%AF%88%E9%AA%97&amount=84
楼主的是这个吗?
2015-02-04 22:41:52 +08:00
回复了 xiaoxinsng 创建的主题 问与答 这种情况,如果告银行能获得一定赔偿吗
说出了问题,然后让你干什么?我正打算办信用卡......
2015-01-06 00:07:06 +08:00
回复了 GeekGao 创建的主题 问与答 有没有在买跑步机在家里用的朋友呢,有个问题
我买了一个椭圆机,用着还不错
gao
@qping

xml加rollback-for="Exception" 和利用@Transactional都分别试过了,还是不行。
还是需要显式调用flush()或者给实体加一个额外的id数字字段并且@GeneratedValue才可以插入数据库
@qping

model层:
@Entity
public class Node {

private String name;

@Id
public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}
}

dao层:
baseDaoImpl.java:

public class BaseDaoImpl {
private SessionFactory sessionFactory;

public SessionFactory getSessionFactory() {
return sessionFactory;
}

@Resource(name = "sessionFactory")
public void setSessionFactory(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}
public Session getCurrentSession(){
return sessionFactory.getCurrentSession();
}
}

NodeDaoImpl.java:

@Repository
public class NodeDaoImpl extends BaseDaoImpl implements NodeDao {

@Override
public Serializable save(Node node){
Session session = getCurrentSession();
session.setFlushMode(FlushMode.COMMIT);
Serializable id = session.save(node);
//session.flush();

return id;
}
}

service层:

@Service
public class NodeServiceImpl implements NodeService {
@Override
public Node add(Node node) {
int id = (Integer)nodeDao.save(node);
return node;

}
@Resource
public void setNodeDao(NodeDao nodeDao) {
this.nodeDao = nodeDao;
}
private NodeDao nodeDao;
}

controller层(spring mvc):

@Controller
@RequestMapping("/admin")
public class AdminController {
@RequestMapping
public String index(){
return "admin/admin";
}

@RequestMapping(value = "/node")
public String addNode(@RequestParam("name")String nodename,ModelMap model){
Node node = new Node();
node.setName(nodename);
nodeService.add(node);
model.addAttribute("msg","添加成功");
return "admin/admin";

}

@Resource
public void setNodeService(NodeService nodeService) {
this.nodeService = nodeService;
}

private NodeService nodeService;
}

spring-hibernate.xml配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd">

<!-- 数据库连接配置 -->
<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${driveClassName}" />
<property name="url" value="${jdbc_url}" />
<property name="username" value="${jdbc_name}" />
<property name="password" value="${jdbc_password}" />

<property name="initialSize" value="5" />
<property name="maxConnLifetimeMillis" value="60000" />
<property name="maxTotal" value="20" />
<property name="maxIdle" value="5" />
</bean>

<!-- Hibernate属性配置 -->
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="hibernateProperties">
<props>
<prop key="hibernate.hbm2ddl.auto">update</prop>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.format_sql">true</prop>
</props>
</property>
<property name="packagesToScan">
<list>
<value>model</value>
</list>
</property>
</bean>


<!-- 事务配置 -->
<!-- 需要引入tx的命名空间 -->
<!-- 这是事务通知操作,使用的事务管理器引用自 transactionManager -->
<bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>

<tx:advice id="txAdvice" transaction-manager="transactionManager">
<!-- 指定哪些方法需要加入事务,这里懒惰一下全部加入,可以使用通配符来只加入需要的方法 -->
<tx:attributes>
<tx:method name="save*" propagation="REQUIRED" />
<tx:method name="add*" propagation="REQUIRED" />
<tx:method name="edit*" propagation="REQUIRED" />
<tx:method name="delete*" propagation="REQUIRED" />
<tx:method name="get*" propagation="REQUIRED" read-only="true"/>
<tx:method name="is*" propagation="REQUIRED" read-only="true"/>
<tx:method name="follow*" propagation="REQUIRED" />
<!--<tx:method name="*" propagation="REQUIRED" />-->
</tx:attributes>
</tx:advice>
<!-- 需要引入aop的命名空间 -->
<aop:config proxy-target-class="true">
<!-- 切入点指明了在执行Service的所有方法时产生事务拦截操作 -->
<aop:pointcut id="transactionPointcut" expression="execution(* service.Impl.*.*(..))" />
<!-- 定义了将采用何种拦截操作,这里引用到 txAdvice -->
<aop:advisor pointcut-ref="transactionPointcut" advice-ref="txAdvice" />
</aop:config>
</beans>
@forreal
@qping
没有错误日志(控制台上什么都没有)
@qping 没有错误日志(控制台上sql语句,错误日志什么都没有),
配置都是照https://github.com/ZhibingXie/SpringMVC-Spring-Hibernate来配的。
就是有一个实体类,id用的是名字(String类型),而且没有注解@GeneratedValue,然后事务提交不发出insert语句也不存入数据库。必须手动调用flush()才行。
但是如果在那个实体类上额外加上一个int或long的id,并且注解@GeneratedValue(我感觉是问题的关键),配置什么的都不用改就可以不手动调用flush(),而是事务提交时就自动发出insert语句并插入数据库了。
2014-11-08 17:55:09 +08:00
回复了 geeglo 创建的主题 问与答 求一条正则表达式。
(http://[a-zA-Z0-9_\-\.\/]+\.(jpg|png|gif)(\\n)*)

在http://tool.chinaz.com/regex/上简单验证了一下,不知道想得周不周全

ps:印象中/不用转义。但是转义也可以匹配
@welsmann 主键我想自己指定,不想自动生成。但是我试了如果实体的主键是Long类型却不加@GeneratedValue 也会save()时不插入数据库。

@qping 如果不加@GeneratedValue到主键上,commit()时就不会插入数据库。不知道为什么。(哪怕我手动指定了主键)

@shuson 意思是先用自动生成主键,然后再@PrePersist注解的方法 改对象的主键吗?
2014-11-01 13:08:48 +08:00
回复了 yuewolf 创建的主题 Python 我这种情况学 python 还是 php 更合适?
@wodemyworld 好的
2014-10-31 11:45:11 +08:00
回复了 yuewolf 创建的主题 Python 我这种情况学 python 还是 php 更合适?
@wodemyworld 原来是这样,django的orm会不会好一点?
2014-10-30 16:20:21 +08:00
回复了 yuewolf 创建的主题 Python 我这种情况学 python 还是 php 更合适?
@wodemyworld
过段时间打算看看sqlalchemy,请问为什么有时候是噩梦?
2014-10-17 10:58:22 +08:00
回复了 bladecamper 创建的主题 问与答 iPhone 不能更新 app 了
我的ipad(未越狱)也是这样,我猜是因为我没升级到ios8的缘故吧
2014-09-23 11:19:21 +08:00
回复了 MonkeyDLuffy 创建的主题 问与答 国庆长假有什么好方法度过的?
@hging 是7周7语言吧
2014-09-19 11:15:50 +08:00
回复了 kukat 创建的主题 买买买 iPhone 6 Plus 64GB Silver 入手
感觉正面蛮不错的
2014-09-02 15:29:16 +08:00
回复了 jacob 创建的主题 问与答 如何安装 linux 但是不让 grub 接管 windows 启动
楼主想要的是这个吗? http://www.linuxidc.com/Linux/2007-11/8786.htm
2014-08-21 12:48:05 +08:00
回复了 doublefang 创建的主题 奇思妙想 写的 Ruby on Rails 入门好像太吐槽向了?
精彩
2014-07-23 11:44:17 +08:00
回复了 whrhw 创建的主题 问与答 学 css 遇到的问题,求前端高手解答
学习了
@kamal
类似这种问题向搜索引擎描述啊,比如一开始我可能不知道是margin collapsing
@xiaozhang
多谢
1  2  3  4  5  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1076 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 32ms · UTC 19:47 · PVG 03:47 · LAX 11:47 · JFK 14:47
Developed with CodeLauncher
♥ Do have faith in what you're doing.