字段定义
/** Date. */
@Column(columnDefinition = "datetime")
private Date date;
Run Code Online (Sandbox Code Playgroud)
二传手
public void setDate(final Date date) {
DateFormat dfmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
this.date = dfmt.parse(dfmt.format(date));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
有没有人知道如何将"零日期"转换为适当的值?因为我有错误:
Cannot convert value '0000-00-00 00:00:00' from column 13 to TIMESTAMP
Run Code Online (Sandbox Code Playgroud)
即使我设置"默认"字段和setter如下:
/** Date. */
@Column
private Date date;
public void setDate(final Date date) {
this.date = date;
}
Run Code Online (Sandbox Code Playgroud)
我还会遇到同样的问题....
文件说:
Grails团队不鼓励将核心应用程序逻辑嵌入到控制器中,因为它不会促进重用和关注的清晰分离.
我在src/groovy文件夹中有一个API控制器和一些Groovy类.这些类只实现了我的应用程序逻辑,因此API控制器中的操作以这种方式工作:
//index page
def index = {
render new IndexApi().index(params) as JSON
}
Run Code Online (Sandbox Code Playgroud)
我很好奇 - 有没有理由将我的应用程序逻辑从简单的groovy类转移到服务中?
我有酒店实体:
class Hotel {
City city
}
Run Code Online (Sandbox Code Playgroud)
现在,我需要有特定城市的酒店数量.它可以这样做:
def hotels = Hotel.findAllByCity(city)
def cnt = hotels.size()
Run Code Online (Sandbox Code Playgroud)
但这是非常肮脏的方式.似乎有了标准会更好,但我不知道如何实现它......
我有hibernate.cfg.xml文件.
<session-factory>
<!-- Database connection settings -->
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url"></property>
<property name="connection.username"></property>
<property name="connection.password"></property>
<!-- JDBC connection pool (use the built-in) -->
<property name="connection.pool_size">1</property>
Run Code Online (Sandbox Code Playgroud)
.....................
这是文件中最有趣的部分.现在我必须设置缺失值:url,username,password.我试图这样做:
public static void SetSessionFactory() {
try {
AnnotationConfiguration conf = new AnnotationConfiguration().configure();
// <!-- Database connection settings -->
conf.setProperty("connection.url", URL);
conf.setProperty("connection.username", USERNAME);
conf.setProperty("connection.password", PASSWORD);
SESSION_FACTORY = conf.buildSessionFactory();
} catch (Throwable ex) {
// Log exception!
throw new ExceptionInInitializerError(ex);
}
}
Run Code Online (Sandbox Code Playgroud)
但它只是从hibernate.cfg.xm加载我的配置,并且不更改任何属性...
url,username,passoword - 是命令行参数,所以我必须在运行时设置它们.
我现在正在进行负载测试.大约900个请求后,我收到此错误:
[ 03.08.10 11:49:00.465] [Store org.hibernate.cache.StandardQueryCache Spool Thread] ERROR net.sf.ehcache.store.DiskStore - org.hibernate.cache.StandardQueryCacheCache: Failed to write element to disk 'sql: select hotelfeatu0_.name as col_0_0_ from feature hotelfeatu0_ where hotelfeatu0_.class='org.company.domains.HotelFeatures' and hotelfeatu0_.lang=? and hotelfeatu0_.hotel_id=?; parameters: ; named parameters: {ht=100: 'Hotel', lng=en}'. Initial cause was org.company.domains.Hotel
java.io.NotSerializableException: org.company.domains.Hotel
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
at java.util.HashMap.writeObject(HashMap.java:1001)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474) …
Run Code Online (Sandbox Code Playgroud) 我有一个包含"逻辑"类的包(如CheckAuthenticationDataLogic.java,GetVocabularyiesLogic.java).另一个类--ApiService.java用于生成wsdl.ApiService.java有很多像这样的方法:
/**
* Check authentication data.
* @param contractNumber - number of contract.
* @param msisdn - msisdn.
* @param superPassword - super password.
* @return result of authentication.
*/
@WebMethod
@WebResult(name = "result")
public CheckAuthenticationDataResult checkAuthenticationData(@WebParam(name = "contractNumber")
final String contractNumber,
@WebParam(name = "msisdn")
final String msisdn,
@WebParam(name = "superPassword")
final String superPassword) {
return runLogic(new CheckAuthenticationDataLogic(contractNumber, msisdn, superPassword));
}
Run Code Online (Sandbox Code Playgroud)
如你所见它只是一个代理方法...所以我想避免两次做同样的工作,并从逻辑类生成WSDL而不编写ApiService.java.是否存在用于此目的的任何工具或库?
四月份,我们开始收到很多" NotRegistered "错误.根据谷歌文档,它应该只在应用程序被卸载或更新时发生,但在我们的情况下,令牌可以在约40分钟内" 到期 ",即使设备绝对没有任何问题.
让事情变得更值得的是,如果让reg_id_1 "过期"并且服务器返回' NotRegistered '错误 - 我们会推送客户端再次注册,但GCM提供了相同的令牌"NotRegistered".应用更新没有帮助.只有重新安装或用户重置(Android用户)帮助.
所以问题是 - 有没有人遇到同样的问题和/或有一些解决方案?
PS我想知道,它可以连接到4月ClientLogin关闭和Google服务器出错吗?https://plus.google.com/+GoogleDevelopers/posts/RK1pw9Cy4Sd
UPD有关Google的回复,请参阅此处
我想写一些小程序.它将在我的计算机(笔记本电脑)上运行蓝牙适配器,然后发现所有可见的蓝牙适配器(电话,打印机,其他计算机等),但我之前没有使用过Java蓝牙.
请帮我找到起点.我必须首先下载哪些SDK或库?要读什么文学?
我用谷歌搜索了BlueCove,但它不支持我的三星D600,所以我无法测试我的应用程序.
我们正在为移动设备(Android + iOS)开发HTML5应用程序.但是最大的问题是内存消耗 - 使用的内存量上升得非常快,应用程序变得迟钝.
什么是与HTML(JavaScript)应用程序中的内存泄漏作斗争的最佳实践,提示,工具,解决方案等?
PS我们仅针对Webkit浏览器