jdbcManager.update(hogeEntity).includes( hogeNames.colA(), hogeNames.colB(), hogeNames.colC()).execute();
/*** * エンティティの文字列フィールドの長さをチェックします<br/> * Columnアノテーションの length 属性と比較して長ければエラーログ出力します<br/> * ついでにnot null制約がついているフィールドにnullを設定したときもエラーログ出力します * @param entity チェックしたいエンティティ * @return チェックOKなら true NGなら false */ public static boolean checkStringFieldLength(Object entity){ boolean b = true; try { Class<?> cls = entity.getClass(); Field[] flds = cls.getDeclaredFields(); for(Field f : flds){ if( f.getType().equals(String.class) ){ Column c = f.getAnnotation(Column.class); int len = c.length(); String name = cls.getSimpleName() +"." +f.getName(); String val = (String) f.get(entity); if(StringUtil.isEmpty(val)==false){ if(val.length() > len){ Log.error(name + "の値[" + val + "]がエンティティで指定されている長さ(" + len + ")よりも長すぎます"); b = false; } } if(c.nullable()==false && val == null){ Log.error(name +"にはnullを設定することはできません"); b = false; } } } return b; }catch(Exception e){ e.printStackTrace(); return b; } }
(例) <component name="sample" class="jp.co.Sample"> <aspect>j2ee.requiredTx</aspect> </component>
[ESSR0046]コンポーネント(j2ee)が見つかりませんと言われるならば
<include path="j2ee.dicon"/>をapp.diconに追加すべし
[ESSR0045]interface javax.sql.XADataSourceに複数のコンポーネント (org.seasar.extension.dbcp.impl.XADataSourceImpl, org.seasar.extension.dbcp.impl.XADataSourceImpl)が登録されています
<component name="connectionPool" class="org.seasar.extension.dbcp.impl.ConnectionPoolImpl"> <property name="timeout">600</property> ←秒数 <property name="maxPoolSize">10</property> <property name="allowLocalTx">true</property> <destroyMethod name="close"/> </component>
public class ViewTestDtoService extends AbstractService<ViewTestDto> { public List<ViewTestDto> getAll(){ List<ViewTestDto> results = jdbcManager.selectBySql( ViewTestDto.class, "select * from VIEW_TEST ") .getResultList(); return results; } }
<component name="xaDataSource" class="org.seasar.extension.dbcp.impl.XADataSourceImpl"> <property name="driverClassName"> "com.microsoft.sqlserver.jdbc.SQLServerDriver" </property> <property name="URL"> "jdbc:sqlserver://localhost;instanceName=SQLEXPRESS;databaseName=hogeDB" </property> <property name="user">"sa"</property> <property name="password">"hogehoge"</property> </component>
<component name="xaDataSource" class="org.seasar.extension.dbcp.impl.XADataSourceImpl"> <property name="driverClassName"> "com.microsoft.sqlserver.jdbc.SQLServerDriver" </property> <property name="URL"> "jdbc:sqlserver://localhost;instanceName=SQLEXPRESS;databaseName=hogeDB;integratedSecurity=true" </property> </component>