为什么老师这样子去创建文件夹?用/

为什么老师这样子去创建文件夹?用/

http://img1.sycdn.imooc.com//climg/5d39ab090001ccd009600510.jpg

为什么视频中的老师这样子来写文件夹名

之前不是用com.imooc.sm.dao吗

为什么现在是com/imooc/sm/dao

而且我发现如果用com.imooc.sm.dao来创建之后,我运行项目会报错

http://img1.sycdn.imooc.com//climg/5d39aba00001930016630799.jpg

http://img1.sycdn.imooc.com//climg/5d39abb30001fab705290915.jpg

正在回答

登陆购买课程后可参与讨论,去登陆

4回答

同学你好。看下面的例子

1、我使用"."分割在resources下创建了一个包“com.imooc.test”可以看到它没有和之前分级(用“/”)创建出的“com.imooc.sm”融合

http://img1.sycdn.imooc.com//climg/5d3a91800001b0e506420202.jpg

打开对应目录,看到它和com在同级目录下,并且是名为“com.imooc.test”的

http://img1.sycdn.imooc.com//climg/5d3a916f0001f4bc06880161.jpg

2、在resources的com.imooc.sm.dao下创建一个test.xml然后使用clean install 重新获得target包,发现test.xml也被编译到了classes中的com.imooc.sm.dao里,并且在本地也找到了:http://img1.sycdn.imooc.com//climg/5d3a92880001bd3006370384.jpg

http://img1.sycdn.imooc.com//climg/5d3a931c00015f2406410482.jpg

http://img1.sycdn.imooc.com//climg/5d3a935e0001780707850337.jpg

所以,只是编译的时候,就将resources文件夹中同一包目录下的内容放在了classes中

3、那么使用“.”创建的那个文件去哪了呢?在如下目录:

http://img1.sycdn.imooc.com//climg/5d3a93c40001d90e06970186.jpg

如果解答了同学的疑问,望采纳~

祝学习愉快~


芝芝兰兰 2019-07-26 11:25:17

同学你好。

1、target文件夹是编译后的文件,将来要发布在Tomcat中的结构

2、idea在resources中创建多级包的方式就是以“/”分割,而不是以“.”分割。使用“.”创建,idea并不会将其视为多级目录,而是一个名为“com.mason.sm.dao”的包,自然就不会在编译时将其放入多级目录中。

3、同学查看的本地文件的位置是代码的存储位置,组织方式还是项目代码的方式,也就是说和下面截图的结构一模一样,所以不会在同一个目录下。

http://img1.sycdn.imooc.com//climg/5d3a70e70001acd505980364.jpg

如果解答了同学的疑问,望采纳~

祝学习愉快~


  • 提问者 MasonM #1
    1:那为啥如果用/来创建文件夹,idea才视为多级文件夹呢,为啥我直接用.创建的话,在本地磁盘查看resources下的文件夹,的确是多级文件夹呀 2:还有一个问题,为啥用/在resource下创建文件夹后,idea视为多级文件夹,然后在编辑发布之后,target文件夹的dao层的class文件会和映射xml合在一起?
    2019-07-26 11:33:29
提问者 MasonM 2019-07-25 21:29:16

如果在resources下用com.mason.sm.dao这样来创建文件夹,在target里是会分开的

http://img1.sycdn.imooc.com//climg/5d39aea60001c2a405740756.jpg

提问者 MasonM 2019-07-25 21:26:57

而且我还发现

如果用com/mason/sm/dao这样在resources文件夹下创建文件夹时,我去查看磁盘上的文件夹,发现是分开的

如图:

http://img1.sycdn.imooc.com//climg/5d39ad8e0001711908930251.jpg

http://img1.sycdn.imooc.com//climg/5d39adb00001484f08710264.jpg

在磁盘上这两个文件夹是分开的

但我在target发布的文件夹里,发现这两个的在一起的

http://img1.sycdn.imooc.com//climg/5d39ade0000102a305730821.jpg

这是为什么呢?

我觉得这个细节还是挺重要的,因为我一开始在resources文件夹里是用com.mason.sm.dao来创建文件夹后,运行项目会报错的

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师