轻量级JavaEE第1章课后习题1

2023-05-16

1、为什么说经典javaee开发和运行成本会比轻量级javaee更高?
答:可能是因为专业的JavaEE服务器要钱,而简单的Web服务器不需要钱。

2、EAO和DAO的区别是什么?什么叫实体(Entity)?

3、业务逻辑层和Domain Object(领域对象)层的区别和联系是什么?分别是什么作用?领域对象是什么?

4、JavaEE应用的架构是什么?

5、业务逻辑是什么意思,和数据库访问有什么区别?

6、Spring和SpringBoot什么区别?

7、p4页关于失败结构的论述看不懂。

8、什么时候企业平台会发生改变?也就是什么时候会换底层数据库?如果不会,那么Hibernate的一个特性就比较鸡肋了。

9、什么是嵌入式服务器?JavaEE服务器和Web服务器的区别是什么?

在这里插入图片描述
按照上面的回答所说,嵌入式服务器,其实就是类似路由器或者交换机网桥这种东西。
web服务器就是tomcat这种专门用于网页访问的服务器。

在这里插入图片描述

按照这篇文章的说法,javaEE包含网页和客户端两种开发方向,而javaWeb就是其中的网页开发方向。java开发桌面应用比较落寞,所以很容易被忽视掉,导致javaEE和javaWeb的区分度不清

10、我其实没弄懂Web的含义是指网页还是指网络?

按照上面一题的说法,Web就是指网页开发。

11、普通的Web服务器不能用分布式吗?

12、DAO和DTO的区别是什么?

13、struts和jsp/servelet的区别和联系?如何一起使用?为什么说struts是MVC框架?

14、什么是MyFaces实现?什么是RAD(快速应用开发)?

15、为什么JSP和Servlet可以实现绝大多数的功能?

16、JAAS和JNDI绑定是什么?p7

17、安装并配置好8.5.23版本的tomcat
只需要解压一下,就好了,然后双击startup就开启了

18、浏览一下tomcat压缩包中的文件

很多看不懂的地方,JRE在哪里也不知道,还有我修改了我笔记本上的JAVA_HOME的指向,但是cmd中java -version都是java15很奇怪

19、说出如何配置java环境变量?
解压后,比较正规的做法是,添加一个JAVA_HOME变量,然后在PATH中用%JAVA_HOME%/bin来指向java的命令,比如javac、javadoc、java之类的。

20、如何修改tomcat长期未被访问自动关闭的时间
没查到

21、修改tomcat提供服务的端口。让tomcat列出Web应用根路径下的所有页面(在哪里列出?)
1、配置端口中的redirectPort为什么设置为8443?
2、我修改了listings为false还重启了tomcat但是没有什么变化

22、说出Server Status控制台和Manager App控制台分别是什么?并且分别查看一下。
1、Server Status
Server Status中有Complete Server Status还有一个Server Status两种状态页面,很多看不懂;
有一个ServerInfo,展示Tomcat版本、JVM版本、JVM提供商、操作系统名称、操作系统版本、操作系统架构、电脑名字、本机被分配的ip地址。
然后是JVM的内存信息,看不懂是什么意思。
然后是三个端口,一个是8009(不是我开的)一个是8080一个是8888后两个是我开的
Complete Server Status和Server Status两个状态唯一的区别是Complete Server Status后面跟了一大堆的东西,我看不太懂。

2、Manager App
最顶上是一个Message,我不知道是什么意思
然后是一个Applications,列出的是webapps中的文件,不知道啥意思
然后是Deploy,部署文件的,会把文件复制到webApps文件夹下,war不知道是什么文件格式。。。
后面是Diagnostics,我看不懂,也不知道怎么用
最后是和Server Status中一样的Server Infomation

23、修改控制台的用户名和密码。如果没找到,安装和书上版本一致的tomcat。如何分配一个manager-gui角色?p11
不需要找,只需要到conf/tomcat-users添加一下就好了。
这些角色我还不明白具体含义和为什么要区分。。。

24、探索一下tomcat的图形界面控制台
HostManager进不去,

25、说出部署Web应用的4种方式,并且练习除了修改server.xml的其他3种方式。
1、直接复制到webApps目录下
2、使用gui界面
3、写一个指定path的xml文件在Catalina/localhost目录下
4、修改server.xml文件

部署的web应用中需要一个index文件,.jsp和.html都可以

26、配置Tomcat的数据源,并说出DBCP数据源是什么?并且说出一个Web应用得概念。什么时候应该使用全局数据源?什么时候应该使用局部数据源?

按照书上p14配置好了,而且把index.jsp页面也放上去了,但是并没有取出数据显示,而是直接把代码显示在上面了,不知道为什么,是不是因为index的原因。。
不是,但是index我也没搞清楚。主要的原因是我没导入javax.naming包(对应Context)和javax.sql.*(对应DataSource),还有要用<% %>包起来才行
如果不指定charset为GBK的话,中文会显示为问号。然后jsp文件是anis还是utf-8都没问题。

27、什么是JNDI名?

28、了解一下javax.sql.DataSource

29、重新下载和安装Eclipse IDE for Java EE Developers。Eclipse了解一下,后面不会用它的,我用记事本。

30、如何查找Eclipse插件的安装地址?说出Eclipse安装插件的方式有哪些?如何卸载手动安装的Eclipse插件?
答:
1、百度呗

2、四种方式:在线安装、手动安装、使用本地压缩包安装、通过Eclipse插件市场安装。
从本地压缩包安装这种一直失败,我也不知道为什么。。。。
手动安装的话,连plugins和features文件夹我都找不到。。。。
直接安装:放进去了重启后也找不到响应插件
扩展安装:按照书上的步骤做了以后也没反应。。。
通过Eclipse插件市场安装,可以看
轻量级javaee第1章课后习题2
的第39题

31、使用Eclipse开发JavaEE应用p17
不知道为什么,书上用first.jsp可以访问,但是我必须要把first改为index才可以正常访问

32、导入一个Eclipse项目p20
第一章让我们导入的项目,和创建的项目结构不同,。。。

33、导入一个非Eclipse项目p21
就是通过File->Import->General->FileSystem选择即可。。

34、使用复制的方式导入一个Eclipse项目。为什么要按f5键?
f5快捷键的意思是单步进入,搞不懂单步进入是什么意思。。。

复制方式就是把src下的java文件,复制到对应的src下。将jsp等文件复制到WebContent目录下。最后按下F5键。
我还没试过。。。

35、安装Ant。什么叫生成工具?什么叫生成文件?有什么作用?p22中失去一些灵活性是什么意思?

生成文件就是负责生成集成指令的xml文件,

想要执行自己写的target就需要这样来写ant命令:ant -f a.xml help这样就可以执行target为help的ant命令了。

作用:可以通过配置生成文件,把很多cmd可以调用的命令组成一组命令,一次性执行,例如:设置一个recreate target,就可以用ant recreate 执行rm然后mkdir这样两条命令

36、查看一下Ant解压后的文件。
下载的是binary版本的,不知道是什么意思,。。。
bin:存放一些cmd中可以执行的命令
etc:书上说是包含一些样式单文件,通常无需理会
lib:存放需要使用的第三方库(在java9中不存在的,存在的话,就不需要放入到这个文件夹了,可以直接使用本地的类库)
manual:一些说明和教程
LICENSE之类的说明性文档(纯英文)

37、命令行窗口和Shell窗口什么区别?尝试一下输入全路径和配置Path这两种不同方式使用Ant命令,ant.bat。
全路径是:从盘符到bin\目录下,类似E:\apache-ant-1.10.1\bin\ant -f a.xml这样使用

配置Path的话,就可以直接使用ant -f a.xml

38、为什么叫Ant?
ant的英文含义是蚂蚁。我猜测是把逐个命令比喻为蚂蚁,然后ant将多个命令绑定成一个行为,就好像,蚂蚁齐心协力的完成一个事情。

39、使用Ant工具,-find、-s、-buildfile、-file、-f、-quiet、-q、-verbose、-v、-logfile、-l、-D=
尝试在生成文件中访问环境变量的值。使用Ant显式指定希望运行的target。ant -help
答:
-find、-f、-s、-buildfile(这四个好像都一样的功能)、-quiet、-q、-verbose
、-v、-logfile、-l(file就是类似 a.log文件)、-D完成,

把文件名改为build.xml就可以直接ant run这样的格式了。
quiet是安静的 -quite是相当的意思

40、定义生成文件。
if=“”
unless=“”

41、dist是放什么的?什么叫做存放项目打包、项目发布文件的文件夹?p25
答:这个是和build这个target有关系,就是把打包好的jar包放入其中

42、<project的basedir指定的基准路径是什么意思?p25如果在同一个生成文件里指定了两个同名的target会发生什么?if和unless怎么用?有什么作用?
答:
1、重名的target会报错,说名字重复了,无法执行target
2、if和unless上面用了,
3、就是为了某些情况下,有某些<property 或者没有的时候,才会执行,比如我使用compile结果没有对应的文件夹,就不会执行,就不会报错。

dir指目录,目录是一个文件夹
file指文件

43、定义Ant任务。看一下p26说的Ant解压路径下的manual目录下的tasksoverview.html页面来了解Ant所支持的核心任务和可选任务。

答:看了一下,列出了他的任务清单,还有简短说明,和详细说明的地址。但是没看到什么核心任务和可选任务这两类的说明。

44、尝试使用<property元素,和 b u i l d d i r 和 {builddir}和 builddir${}。echo是什么?使用name、value、resource、file、url、environment、classpath、classpathref
书上有例子的都写了,没有例子的查了三篇博客都没讲,后面有机会补上。

45、使用path和classpath元素p28,说出和的区别?p28下面的配置文件有什么作用?为什么要写它们?居然还有sqlp29

<filelist 是采用files的方式指定文件
<fileset 是采用<include 和<exclude 的方式指定文件

这种文件的配置片段应该是结合一些cmd指令使用的,比如rm path之类的,例如我只是想删除以a开头的文件夹
现在当前路径下有四个文件夹
在这里插入图片描述

我要删除以a开头的文件夹

如何查看Ant文档:
Task是指target内部的那些元素,想要查看他们的用法就到%ANT_HOME%/manual/Tasks中查看即可,

比如上面的任务,就可以使用
<delete
<filelist id=“filea” dir=“.” files=“aaa,abc”/
</delete
来删除(其实应该以dirlist来删除才对,因为filelist指定的是文件,dir才是文件夹)

删除b开头的文件夹就可以采用

<delete
	<dirset dir="." casesensitive="yes"
		<include name="b*"/
	</dirset
</delete

来完成

46、看一下%ANT_HOME%/manual/Tasks中的关于task的详细介绍。
答:很多,有156个task
每个都有详细的说明、参数和例子这三大部分组成。

47、p30上面一些属性的含义。
答:查看manual/tasks中的javac文档即可

debug:我还是不知道这个debug信息是什么
在这里插入图片描述
includeantruntime:是否将ant运行时需要的库放到classpath中,推荐是不要这样,因为这样的话,就不影响在其他没有ant的机器上运行
在这里插入图片描述

deprecation: 不太明白什么是deprecation信息
在这里插入图片描述
optimize:不知道这个optimize的含义,不过它说在JDK1.3之后这个参数就被忽视了。
在这里插入图片描述

failonerror:我猜测是指,编译时异常是否是强制停止build,
在这里插入图片描述

48、p30中的compile和build为什么要先删除?不删除运行一下试一试。并且用一用这些方法,并且说出Ant的作用。

答:我测试了一下,如果先删除的话,新编译的并不会覆盖旧的,只有先删除了才会覆盖旧的。

Ant的作用就是,通过target元素组合一系列的task方法,用一个指令完成一系列指令。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

轻量级JavaEE第1章课后习题1 的相关文章

  • Window2012R2 忘记密码解决办法

    推荐 xff1a ISO映像修复法 xff08 步骤复杂但方法管用 xff09 以WMware虚拟机中WindowServer2008R2忘记开机密码为例 1 xff09 配置虚拟主机的CD ROM 启动VMware虚拟机程序 选中Wind
  • linux下查找文件及查找包含指定内容的文件常用命令。

    xfeff xfeff 每一种操作系统都是由成千上万个不同种类的文件所组成的 其中有系统本身自带的文件 xff0c 用户自己的文件 xff0c 还有共享文件等等 我们有时候经常忘记某份文件放在硬盘中的哪个地方 在微软的Windows操作系统
  • 知识图谱构建技术

    知识图谱的构建技术包括知识抽取 知识融合 知识加工和知识更新等 图1 知识图谱构建技术流程图 1 1 知识抽取 知识抽取就是自动化或半自动化的从原始数据中获得实体 关系及属性等可用知识单元 早期是基于规则的知识抽取 xff0c 通过人为预先
  • 答“我们的团队项目是否有大泥球?”

    总结了一下 xff0c 产生大泥球的主要原因有下面这些原因 xff1a xff08 1 xff09 一次性代码 xff08 2 xff09 碎片式增长 xff08 3 xff09 为了让软件不出问题 xff08 4 xff09 Copy p
  • JSON是什么

    提起 JSON xff0c 作为如今最受欢迎的数据交换格式 xff0c 可以说是无人不知 无人不晓了 JSON 全称 JavaScript Object Notation xff08 JS 对象简谱 xff09 xff0c 自诞生之初的小目
  • <操作系统> 售票员司机问题(信号量) C语言实现

    问题描述 xff1a 思路 xff1a 代码 xff1a span class token macro property span class token directive keyword include span span class
  • 展锐T7520(ANDROID 11) boot.img解包

    1 make unpack bootimg 或者 prebuilts build tools linux x86 bin ninja f out combined ninja unpack bootimg 2 export PATH 61
  • 连通图(求桥的数量)

    桥 xff1a 连通图中存在的必经之路 xff0c 我们成为桥 xff0c 如果把此路断开 xff0c 连通图便会变成两个图 判断是否是桥的方式 low v gt dfn u 题目链接 AC代码 xff1a include lt bits
  • Lotti引发的java.lang.StackOverflowError

    在项目中将lottie从2 8 0版本进行升级至4 2 0版本后 xff0c 突然出现堆栈内存错误 xff0c 最后查找原因是因为在onAnimationEnd 回调方法中调用resumeAnimation 方法 xff0c 而在resum
  • Ubuntu 服务器操作笔记 之 安装SSH

    1 gt sudo apt get install openssh server 安装SSH 2 gt sudo ps e grep ssh 查询 SSH是否启动 3 gt sudo etc init d ssh start 如果没有 则启
  • 分析APP的安装流程 API29

    先总结一下安装流程 xff0c 以及比较重要的类 PackageInstallerActivity java xff1a 在文件管理器里点击apk后就会调用该类 xff0c 主要用于显示要安装的apk的一些权限信息 InstallAppPr
  • Linux下安装KDE桌面环境

    Linux中有许多桌面应用环境 xff0c 在这其中除了deepin的dde桌面之外 xff0c 界面和功能都很强大好用的就是kde了 下面我来分享一下我的kde安装经过 我的Linux发行版是deepin的v15 11版本 xff0c 尝
  • json去掉指定字段

    lt dependency gt lt groupId gt org json lt groupId gt lt artifactId gt json lt artifactId gt lt version gt 20160810 lt v
  • mac 安装 man中文文档

    配置环境 brew install autotoolsbrew install python3brew install openccbrew install automake 下载源码 https github com man pages
  • 【NLP最佳实践】Huggingface Transformers实战教程

    内容简介 x1f917 手把手带你学 xff1a 快速入门Huggingface Transformers 和鲸链接 xff1a https www heywhale com home activity detail 61dd2a3dc23
  • visual studio配置clang开发环境

    一 安装环境 1 下载visual studio 2 选择工作负载 xff0c 使用c 43 43 的桌面开发 3 选择单个组件 xff0c 搜索clang xff0c 勾选两个组件 4 点击安装 等待安装完成 二 测试环境 xff1a 在
  • DeepSpeed-Chat:最强ChatGPT训练框架,一键完成RLHF训练!

    https github com microsoft DeepSpeedExamples tree master applications DeepSpeed Chat 一个快速 负担得起 可扩展和开放的系统框架 xff0c 用于实现端到端
  • BigCode开放性能超越Copilot的代码生成模型Starcoder

    BigCode释出高效能程式码生成模型StarCoderBase xff0c 与为Python调校的StarCoder xff0c 效能超越GitHub Copilot初期版本所用的OpenAI code cushman 001模型 xff
  • 【LLM系列之FLAN-T5/PaLM】Scaling Instruction-Finetuned Language Models

    论文题目 xff1a Scaling Instruction Finetuned Language Models 论文链接 xff1a https arxiv org pdf 2210 11416 pdf github链接 xff1a ht
  • LlamaIndex :面向QA 系统的全新文档摘要索引

    在这篇博文中 xff0c 我们介绍了一种全新的 LlamaIndex 数据结构 xff1a 文档摘要索引 我们描述了与传统语义搜索相比 xff0c 它如何帮助提供更好的检索性能 xff0c 并通过一个示例进行了介绍 背景 大型语言模型 LL

随机推荐

  • html中各种hr样式

    第一种 lt hr style 61 34 height 2px border none border top 2px dotted 185598 34 gt height 2px 是hr的高度 border none 是没有边框 bord
  • Python爬虫系列(五)360图库美女图片下载

    这几天终于忙完毕设和学校的事情 xff0c 终于有时间来写Python了 xff08 xffe3 xffe3 xff09 前些天在群里看到有人讨论这个360美女图库 的爬取 自己今天也尝试下 xff08 蛮简单 xff09 因为这个网站是下
  • Python 过滤字母和数字

    实例1 crazystring 61 39 dade142 0142f ad 39 只保留数字 new crazy 61 filter str isdigit crazystring print 39 39 join list new cr
  • Python人工智能之图片识别,Python3一行代码实现图片文字识别

    自学Python3第5天 xff0c 今天突发奇想 xff0c 想用Python识别图片里的文字 没想到Python实现图片文字识别这么简单 xff0c 只需要一行代码就能搞定 作者微信 xff1a 2501902696 from PIL
  • Contrastive Loss(对比损失)

    Contrastive Loss 在传统的siamese network中一般使用Contrastive Loss作为损失函数 xff0c 这种损失函数可以有效的处理孪生神经网络中的paired data的关系 siamese networ
  • maven详细配置

    Maven 本质 xff1a 项目管理工具 可以做到整体编译 测试 xff0c 快速打包部署 作用 xff1a 项目构建 xff0c 提供标准的构建方式依赖管理 xff0c 避免版本冲突 生命周期 xff1a mvn clean 清理编译项
  • clang ast基本命令的使用

    1 生成二进制文件 clang emit ast input cpp 需要二进制文件相应的查看器才可以读 xff0c txt打开乱码了 2 直接在控制台打印输出 clang Xclang ast dump fsyntax only inpu
  • unreferenced local variable

    有时候编译程序的时候会发现下面的错误 warning C4101 39 n 39 unreferenced local variable 其实就是程序里面定义了变量但是没有使用 xff0c 才会有这样的警告 解决方法就是像下面这样定义 in
  • 来自一位女程序员8年的总结。

    8年了 xff0c 从来没有像今天说总结这一下 我认为这是我的一个进步吧 8年 xff0c 包括上北大青鸟培训的2年 xff0c 然后6年的工作 xff0c 换了很多家公司 有个人原因也有公司原因 先说一下培训的那2年 xff0c 我们学习
  • Nginx配置重定向和反向代理(转发)

    重定向 地址重定向 xff1a 是指当使用者浏览某个网址时 xff0c 将他导向到另一个网址的技术 常用在把一串很长的网址 xff0c 转成较短的网址 因为当要传播某网站时 xff0c 常常因为网址太长 xff0c 不好记忆 xff1b 又
  • intelliJ idea创建分层的项目结构

    原文地址 xff1a http www yanwushu com post 35 html 本文使用intelliJidea 14 在idea中创建一个分层 xff08 视图层 业务逻辑层 数据访问层 xff09 的项目步骤如下 xff1a
  • 新电脑将软件安装到D盘的操作说明

    新电脑将软件安装到D盘的操作说明 每次安装软件 xff0c 都会默认安装到C盘 xff0c C盘满了 xff0c 电脑就会变卡 xff0c 我们应该避免这种情况 一 下载软件前要做的事 我们应该避免使用软件管家等工具 xff0c 因为它们的
  • 敏捷开发快速入门(四):Scrum开发流程

    文章目录 Scrum概述Scrum中三个角色Product Owner xff08 产品负责人 xff09 职责Scrum Master xff08 教练 xff09 职责Scrum Team xff08 开发团队 xff09 职责 Scr
  • Java命名规范【全】

    前言 本文根据本人日常的学习等 xff0c 总结出来的Java中的命名规范 基本上概括所有 喜欢的话记得点个赞 xff0c 收藏哟 包 xff08 Package xff09 命名规范 1 使用小写英文字母进行命名 2 多层包之间用点进行分
  • iOS包重签名工具,ipa文件重签名,快速签名,SignTool签名工具,好用的签名工具,App重签名

    重要 xff01 重要 xff01 重要 xff01 xff01 xff01 由于之前使用免费的服务器 xff0c 大概8月20号左右 xff0c 服务器已无法访问 xff0c 造成App无法使用 xff1b 现已把服务器移到阿里云 xff
  • windows server2008环境下mpirun运行报错:应用程序无法正常启动(0xc000007b)的解决方案

    原因是缺少运行库 xff0c 或者运行库32 64版本问题 xff0c 安装 微软常用运行库合集 Microsoft Runtimes AIO x86 43 x64 即可解决 https www flighty cn html soft 2
  • system.img解包打包

    在做copy machine的img中 xff0c 遇到不能重新build的情况 xff08 会改变信息 xff09 xff0c 这个时候可以将原来生 成的这些 img xff08 system img persist img cache
  • jmeter多用户并发测试

    0 总体结构 1 测试计划 gt 添加 gt 线程 xff08 用户 xff09 gt 线程组 2 线程组 gt 添加 gt 取样器 gt HTTP请求 注意本项目登录请求为GET 其他项目可能为POST 3 HTTP请求 gt 添加 gt
  • 练习java文档java.util.logging.ConsoleHandler

    ConsoleHandler 方法 close 相当于flush publish span class token keyword import span span class token namespace java span class
  • 轻量级JavaEE第1章课后习题1

    1 为什么说经典javaee开发和运行成本会比轻量级javaee更高 xff1f 答 可能是因为专业的JavaEE服务器要钱 xff0c 而简单的Web服务器不需要钱 2 EAO和DAO的区别是什么 xff1f 什么叫实体 Entity x