关于java下的目录结构规范问题
这里重点是关注src/main/java/下的目录结构问题。现在有2种结构,不知道哪种才是比较符合的。假设一个项目里面有10个左右的大模块为前提。
方案1:先模块,每个模块里面各自有自己的mvc结构文件夹
方案2:先mvc结构文件夹,然后再每个模块的业务
回答:
方案一更直观
回答:
1、maven分模块
2、微服务
主要是我不知道你想干啥,两种结构都是合理的,不同的区分方式罢了,一个是业务区分,一个是功能区分
回答:
刚体会了一下方案1,发觉这样改之后,mybaits配置文件里,要求指定一个通用前缀的类名来做别名的话,无法实现。。
回答:
第一种方式 mybatis 配置文件实现方式两种:
- 可以重写一下 SqlSessionFactoryBean 里面的 setTypeAliasesPackage 这个方法;
或者所有的别名类扩展自一个基类,在配置文件里面指定一个属性,参见jeesite的配置文件
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="typeAliasesPackage" value="com.thinkgem.jeesite"/>
<property name="typeAliasesSuperType" value="com.thinkgem.jeesite.common.persistence.BaseEntity"/>
<property name="mapperLocations" value="classpath:/mappings/**/*.xml"/>
<property name="configLocation" value="classpath:/mybatis-config.xml"></property>
</bean>
回答:
- 这样子属于从
逻辑
角度去区分模块,因为这是在同一个工程中。如果在这情况下,我认为第1种区分得更好。 - 另外我觉得可以尝试从
工程模块化
角度去区分模块。比如Gradle,支持多项目构建,IDEA也支持模块化的工程,在IDEA中使用Gradle可以方便实现多项目构建。如下图:
以上是 关于java下的目录结构规范问题 的全部内容, 来源链接: utcz.com/p/178328.html