1. Could not determine type for:
java.util.Data, at table: empolyee, for columns:
[org.hibernate.mapping.Column(createdata)]
原因:数据类型不匹配
2. No suitable driver found for jdbc:mysql:/localhost:3306/mldn
原因:Url=jdbc:mysql://localhost:3306/mldn
3. Could not parse configuration: /hibernate.cfg.x
原因:
2017.4.6
4. 留言本程序
问题1:程序调试中,在下面代码中
try { s=MysessionFactory.getcurrentSession();
ts=s.beginTransaction();
s.save(message);
flag=true;
ts.commit();
} catch (Exception e) {
if (ts != null) {
ts.rollback();
}
e.printStackTrace();
}finally
{
if(s!=null&&s.isOpen()){s.close();}
}
只有第一次执行try段中的语句,接下来并没有执行。
原因:在第一次执行师已将Session关闭,接下来并不能获取Session。
‚修改方式,去除finally中的
if(s!=null&&s.isOpen()){s.close();}
将MySessionFactory中getcurrentsession中的判断条件由if(session==null)
改为if(session==null||!session.isOpen())
并且将关闭写在退出系统之前。
2017.4.7
5. 如何将url传递的中文参数乱码编译过来
在网上找的的解决方法为:
Stringmessage= Java.NET.URLEncoder.encode(request.getParameter("message"),"utf-8");
String str=new String(message.getBytes("ISO-8859-1"),"UTF-8"
但是并没有解决乱码问题字符串变成了%A%D的一串数据
‚之后我将其改为:
String sender=request.getParameter("sender");
String ss=new String(sender.getBytes("ISO-8859-1"),"utf-8");
问题才得到解决。
2017.4.13
1.java.util.Properties 继承自Hashtable
一般用途:主要用于读取Java的配置文件,各种语言都有自己所支持的配置文件,配置文件中很多变量是经常改变的,这样做也是为了方便用户,让用户能够脱离程序本身去修改相关的变量设置
主要方法:
1.getProperty ( String key),用指定的键在此属性列表中搜索属性。也就是通过参数key ,得到key 所对应的value。
2.load ( InputStream inStream),从输入流中读取属性列表(键和元素对)。通过对指定的文件(比如说上面的test.properties 文件)进行装载来获取该文件中的所有键- 值对。以供getProperty ( String key) 来搜索。
3.setProperty ( String key, String value),调用 Hashtable的方法 put。他通过调用基类的put方法来设置 键- 值对。
4.store ( OutputStream out, String comments),以适合使用load 方法加载到Properties 表中的格式,将此Properties 表中的属性列表(键和元素对)写入输出流。与load 方法相反,该方法将键- 值对写入到指定的文件中去。
5.clear (),清除所有装载的 键- 值对。该方法在基类中提供。
2.Entry
keySet()方法返回值是Map中key值的集合;entrySet()的返回值也是返回一个Set集合,此集合的类型为Map.Entry。
Map.Entry是Map声明的一个内部接口,此接口为泛型,定义为Entry。它表示Map中的一个实体(一个key-value对)。接口中有getKey(),getValue方法。