JAVA教程之hibernate毗连sqlserver2000成绩的办理...
前些天,在CSDN上看到了一个消息,说是ASP.NETAJAX成功在Linux上运行,这一点对我触动很大,而且引发了我许多感叹,所以想写出来分享一下。server|sqlserver|办理|成绩TransOrder:<setname="OrderItems"table="orderitem"lazy="false"inverse="true"cascade="all"><keycolumn="Order_ID"/><one-to-manyclass="com.kaoyanhelper.dao.OrderItem"/></set>
OrderItem:<classname="OrderItem"table="OrderItem"><idcolumn="OrderItem_ID"name="Id"type="java.lang.Integer"><generatorclass="identity"/></id><many-to-oneclass="com.xx.dao.TransOrder"name="TransOrder"column="Order_ID"/></class>
测试main()publicstaticvoidmain(String[]args)throwsHibernateException{Sessionsession=HibernateUtil.currentSession();Transactiontx=session.beginTransaction();TransOrderorder=newTransOrder();order.setAcceptType("www");order.setAddress("tom");order.setCity("changzhou");OrderItemitem=newOrderItem();item.setItemCount(newInteger(100));item.setItemMoney("1200.2");item.setItemType("kysj");item.setPaperitemId(newInteger(101));item.setResourceitemId(newInteger(102));order.getOrderItems().add(item);item.setTransOrder(order);
session.save(order);session.flush();tx.commit();HibernateUtil.closeSession();}
errormessage:
Cantstartaclonedconnectionwhileinmanualtransactionmode.
办理办法:
竟然是ms的成绩,弄了几天,华侈了,
通常为当你在一个SQLSERVER的JDBC毗连上实行多个STATEMENTS的操纵,大概是手动事件形态(AutoCommit=false)而且利用direct(SelectMethod=direct)形式.Direct形式是默许的形式.办理举措当你利用手动事件形式时,必需把SelectMethod属性的值设置为Cursor,大概是确保在你的毗连上只要一个STATEMENT操纵。
设置hibernate.cfg.xml
<propertyname="hibernate.connection.url">jdbc:microsoft:sqlserver://Localhost:1433;SelectMethod=cursor;DatabaseName=yourdb</property>
SelectMethod=cursor;默许是SelectMethod=diret;
我是在hibernatesyn中利用的,我还改.hibernateSynchronizer文件,没有改hibernate.cfg.xml,呵呵晕。
最好两个文件都改,改hibernate.cfg.xml能乐成运转。
再说说缺点:首先java功能强大的背后是其复杂性,就拿web来说,当今流行的框架有很多,什么struts,spring,jQuery等等,而这无疑增加了java的复杂性。 你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。 多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。 Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。 J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。 你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。 你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
页:
[1]