我正在尝试使用jOOQ和Kotlin并看到一些教程和文档,它看起来非常好.
但是如果jOOQ有一些非常烦人的东西就是代码生成.这似乎太复杂了,最终无法维持.我决定创建自己的表模型(类似于hibernate的工作原理).
我创建了两个表模型:
用户
data class User(
val id: String = UUID.randomUUID().toString(),
val name: String,
val email: String,
val password: String? = null
) {
companion object {
val TABLE: Table<Record> = DSL.table("user")
val ID: Field<String> = DSL.field("id", String::class.java)
val USER_NAME: Field<String> = DSL.field("user_name", String::class.java)
val EMAIL: Field<String> = DSL.field("email", String::class.java)
val PASSWORD: Field<String> = DSL.field("password", String::class.java)
}
}
Run Code Online (Sandbox Code Playgroud)
关注
data class Followers(
val id: String,
val followerId: String,
val userId: String
) {
companion object {
val TABLE: Table<Record> …Run Code Online (Sandbox Code Playgroud) 我在使用多个模块配置我的应用程序路由时遇到问题。如果可能,我想将我的应用程序分成许多模块,并在一个路由配置文件中将它们全部路由。
我有4个模块:
<router-outlet>标签选择要加载的组件的路由。让我们从我的app.routing.ts文件开始
export const routes: Routes = [
{ path: '', component: LoginComponent, pathMatch: 'full' },
{ path: 'app', component: MainComponent, canActivate: [OLAuthGuard],
children: [
{ path: 'inventory-and-purchasing-menu', component: InventoryAndPurchasingMenuComponent },
{ path: 'main-menu', component: MainMenuComponent },
{ path: 'inventory-management', component: InventoryManagementComponent },
{ path: 'items', component: ItemsComponent },
]
},
];
@NgModule({
imports: [
NgbModule,
FormsModule,
CommonModule,
RouterModule.forRoot(routes), …Run Code Online (Sandbox Code Playgroud) 我正在尝试用hibernate学习spring-boot基本注释配置,使自己成为一个永远有效的模板.
我在STS(弹簧工具套件)3.8.3上使用spring-boot最新版本1.51.
这是我的主要内容:
@SpringBootApplication
@EnableAutoConfiguration
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我知道@SpringBootApplication自动附带@componetScan,所以我没有添加它.
我的配置类:
@Configuration
@EnableTransactionManagement
@EnableJpaRepositories(entityManagerFactoryRef = "someEntityManagerFactory", transactionManagerRef = "someTransactionManager", basePackages = {
"com.example.*" })
@EntityScan(basePackages = "com.demo.models")
@ConfigurationProperties(prefix = "mysql.datasource")
public class DataBaseConfig {
@Autowired
private Environment env;
@Bean
public DataSource someDataSource() {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName(env.getProperty("mysql.datasource.driver-class-name"));
dataSource.setUrl(env.getProperty("mysql.datasource.url"));
dataSource.setUsername(env.getProperty("mysql.datasource.username"));
dataSource.setPassword(env.getProperty("mysql.datasource.password"));
return dataSource;
}
@Bean
public LocalContainerEntityManagerFactoryBean someEntityManagerFactory() {
LocalContainerEntityManagerFactoryBean em = new LocalContainerEntityManagerFactoryBean();
em.setDataSource(someDataSource()); …Run Code Online (Sandbox Code Playgroud)