Java Web的一些面试问题求解答

Java Web的一些面试问题求解答,第1张

1、一般封闭到框架中,自动提交false——调用action(数据库 *** 作)——提交事务—关闭connection

2、重载:方法名相同,参数(个数或类型)不同(称之为签名不同)

3、要看代码,经验多的人写的代码逻辑性强,bug会比较少,速度快,考虑得比较周全

4、页面就jsp动态页面,一般由美工做好,需运态的地方从后台获取数据,运态显示,运行的时候会先转为servlet实际为servlet+html

5、记录在日志,如果方法由上级调用,往上抛

6、Junit在一个方法中就可以运行,运行你写的代码,和有没数据库没关系

7、不用框架的话就注意sql注入问题,框架的话hibernate要注意级联 *** 作,ibatis注意假分页,一般做一个分页拦截器

8、测试的话要看要做哪些测试,还要看功能,写测试报告的话下个模版比较快两天

9、各种各样的问题,与需求不符,逻辑性错误,用户体验度方面的数橘……

10、小了一个小组一周,中等的,一个小组三四个月,大的一个小组做一年多

11、做下一个项目,项目维护,部署方面一般由组长及领导负责

12、后台将信息反回前台,前台接收判断,提示错误信息

13、弄断点一般是为了找错,根据代码打,你想在哪一步暂停,查看,就在哪一步打,一般手动

14、异常要么try catch要么就往上抛

15、没写过

16、很少很eclipse,用myeclipse 5.5

17、用get方法

18、ssi是struts,spring,ibatis框架,C:controller/action M:实体类UserV:struts中xml映射的jsp页面

19、取出来equals比较下

20、如果是像new int[10]的话就有10个元素否则用A.length来看

21、不知道

22、用来记录日志,一般每天一个日志

23、告中编码?一般utf-8/gbk在eclipse设置整个项目格式

24、hibernate映射文件可以袜毕山反转自动生成.hbm.xml文件,和spring整合的话.cfg.xml就不需要了配置在spring的配置文件里:

<bean id="mydataSource" class="org.apache.commons.dbcp.BasicDataSource">

<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>

<property name="url" value="jdbc:mysql://localhost:3306/zhang?useUnicode=true&characterEncoding=utf8" />

<property name="username" value="root"></property>

<property name="password" value="123456"></property>

</bean>

<bean id="mysessionFactory"

class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

<property name="dataSource" ref="mydataSource"></property>

<property name="hibernateProperties">

<props>

<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>

<prop key="hibernate.show_sql">true</prop>

<prop key="hibernate.format_sql">true</prop>

<!-- 开启二级缓存 -->

<prop key="jobernate.cache.use_second_level_cache">true</prop>

<prop key="hibernate.cache.provider_class">

net.sf.ehcache.hibernate.EhCacheProvider

</prop>

<prop key="hibernate.cache.use_query_cache">true</prop>

</props>

</property>

<property name="mappingResources">

<list>

<value>com/entity/User.hbm.xml</value>

<value>com/entity/Product.hbm.xml</value>

<value>com/entity/Item.hbm.xml</value>

<value>com/entity/Category.hbm.xml</value>

<value>com/entity/Address.hbm.xml</value>

<value>com/entity/Order.hbm.xml</value>

</list>

</property>

</bean>

25、依情况而定

26、比如学生表t_stu和得分表t_score,t_score中的stuid对应t_stu中的主键id,那么stuid就是t_stu的外键,主键与外键关系为1对1或者1对多

27、#表示传进来的传数为一个字符串(如果字符串已有引号则不再加引号,如果没有引号则加上引号,为了防止sql注入),$表示按传入进来的字符串,不再进行判断

28、spring+hibernate中事物配置:

<!-- 定义事务管理 -->

<bean id="txtManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">

<property name="sessionFactory" ref="mysessionFactory"></property>

</bean>

<!-- 定义一个通知,管理规则 -->

<tx:advice id="txtAdvice" transaction-manager="txtManager">

<tx:attributes>

<tx:method name="delete*" propagation="REQUIRED"/>

<tx:method name="save*" propagation="REQUIRED"/>

<tx:method name="update*" propagation="REQUIRED"/>

<tx:method name="find*" propagation="NOT_SUPPORTED"/>

<tx:method name="get*" propagation="NOT_SUPPORTED"/>

</tx:attributes>

</tx:advice>

<aop:config>

<aop:pointcut expression="within(com.tarena.dang.dao.impl.*)" id="servicePointcut"/>

<!-- 将txtAdvice和切入点相结合 -->

<aop:advisor advice-ref="txtAdvice" pointcut-ref="servicePointcut"/>

</aop:config>

sprint+mybatis配置:

<!-- 事务 -->

<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">

<property name="dataSource" ref="dataSource" />

</bean>

<!-- 配置事务的传播特性 -->

<bean id="baseTransactionProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">

<property name="transactionManager" ref="transactionManager" />

<property name="transactionAttributes">

<props>

<prop key="add*">PROPAGATION_REQUIRED</prop>

<prop key="edit*">PROPAGATION_REQUIRED</prop>

<prop key="remove*">PROPAGATION_REQUIRED</prop>

<prop key="insert*">PROPAGATION_REQUIRED</prop>

<prop key="update*">PROPAGATION_REQUIRED</prop>

<prop key="del*">PROPAGATION_REQUIRED</prop>

<prop key="cancel*">PROPAGATION_REQUIRED</prop>

<prop key="*">readOnly</prop>

</props>

</property>

</bean>

29、用框架一般不会有sql注入,框架都有考虑到的,jdbc的话用PreparedStatement

没有。本质上,jsp和servlet都谨局是java文件。

jsp文件转换成java文件,编译成class文件,由虚拟机运行class文件,能被浏览器识别的数据在浏览器得以显现。

我们可以验证,部署tomcat,发布含有祥蚂让jsp页面的web项目。访问jsp页面确认发布成功后,我们可以到tomcat的安装路径:E:\apache-tomcat-7.0.65\work\Catalina\localhost\qinglan\org\apache\jsp

如图,

qinglan是我的项目名,此目录下有两个java文件,两个class文件。打开我上传的附件,即“index_jsp.java”文件可以发现,代码和servlet类有物森点像。

我们知道,servlet是符合某种规范的java文件,而jsp页面转换成的java文件也符合这种规范。所以,你可以把jsp页面当作servlet来使用,把servlet当作jsp来使用。当然两者有他们各自最适合应用的场景。

jsp适合前端显示数据,servlet适合接受数据、控制数据跳转流程。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12249994.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存