237.5. サンプル
たとえば、JMS キューから Bean を消費してデータベースに挿入する場合は、次のようにします。
from("activemq:queue:newAccount") .to("mybatis-bean:AccountService:insertBeanAccount");
呼び出す操作の種類を Camel に指示する必要があるため、Bean 名とメソッド名を指定する必要があることに注意してください。
AccountService
は、MyBatis Bean アノテーションを持つ Bean のタイプエイリアスです。SqlMapConfig ファイルでタイプエイリアスを設定できます。
<typeAliases> <typeAlias alias="Account" type="org.apache.camel.component.mybatis.Account"/> <typeAlias alias="AccountService" type="org.apache.camel.component.mybatis.bean.AccountService"/> </typeAliases>
On the `AccountService` bean you can declare the MyBatis mappins using annotations as shown:
public interface AccountService { @Select("select ACC_ID as id, ACC_FIRST_NAME as firstName, ACC_LAST_NAME as lastName" + ", ACC_EMAIL as emailAddress from ACCOUNT where ACC_ID = #{id}") Account selectBeanAccountById(@Param("id") int no); @Select("select * from ACCOUNT order by ACC_ID") @ResultMap("Account.AccountResult") List<Account> selectBeanAllAccounts(); @Insert("insert into ACCOUNT (ACC_ID,ACC_FIRST_NAME,ACC_LAST_NAME,ACC_EMAIL)" + " values (#{id}, #{firstName}, #{lastName}, #{emailAddress})") void insertBeanAccount(Account account); }