イントロダクション Amazon Simple Email Service (Amazon SES)で受信したメールを、 自動的にS3に保存します。 SESは受信したタイミングでLambdaを起動してDyna
Read More →
JWTの利点 データベースにアクセスしないでアクセストークンの検証ができる データベースにアクセスしないでアクセストークンからユーザーIDなどを
Read More →
パスワードを保存するには、SHAハッシュよりBCryptが良い 利点 レインボーテーブルアタックできない(同一のパスワードでも毎回異なるハッシュ
Read More →
AWS(ECS / EC2)で、データベースのパスワードやRSAの秘密鍵を使う場合は、 AWS Secrets Managerから取得すると良い Terraformの設定 AWS Secrets Manager AWS Secrets
Read More →
テーブルのレコード全削除(ユニットテスト用) /// テーブルを全削除するコンポーネント @Component class DataCleaner( private val dataSource: DataSource, private val entityManager: EntityManager ) { private var tables: List<String>? = null fun deleteAll() { dataSource.connection.use { con -> // 安全装
Read More →
Applicationクラスに@EnableSchedulingを追加する @SpringBootApplication @EnableScheduling class Application { companion object { @JvmStatic fun main(args: Array<String>) { SpringApplication.run(Application::class.java, *args) } } } バックグラウンドで実行したいメ
Read More →
@Entity data class User( var id: Long, var name: String?, var age: Int, ... ) class UserSummary(var id:Long, var name:String?) interface UserRepository : JpaRepository<User, Long> { fun findOneById(id: Long): User? fun <VIEW> findOneById(id: Long, type: Class<VIEW>): VIEW? fun <VIEW> findByIdIn(ids: List<Long>, type: Class<VIEW>): List<VIEW> // @Queryを使うと、typeを渡してもselec
Read More →
Javaと違いKotlinの場合は、JDBCを直接つかってもあまり冗長にならない データ取得方法3パターン EntityManager @Component class Clazz1( private val entityManager: EntityManager ){ fun procSomething() { val rows = entityManager.createNativeQuery(""" select id,
Read More →