1.7 基于XML配置方式使用Spring MVC

一、基于XML配置与注解的方式使用Spring MVC

1、创建Maven项目

Maven项目 - SpringMvcDemo01
在这里插入图片描述

单击【Finish】按钮
在这里插入图片描述

2、添加相关依赖

在pom.xml文件里添加支持Spring MVC的相关依赖
在这里插入图片描述

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>net.hf.spring</groupId><artifactId>SpringMvcDemo01</artifactId><version>1.0-SNAPSHOT</version><properties><!-- spring.version --><spring.version>5.3.25</spring.version></properties><dependencies><!--Spring核心--><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>${spring.version}</version></dependency><!--Spring Bean实体--><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>${spring.version}</version></dependency><!--Spring容器--><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><!--Spring测试--><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>${spring.version}</version></dependency><!--Spring Web功能--><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>${spring.version}</version></dependency><!--Spring MVC框架--><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>${spring.version}</version></dependency><!--JSP标准标签库--><dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId><version>1.2</version></dependency><!--Servlet --><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</version><scope>provided</scope></dependency><!--日志框架--><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version></dependency><!--单元测试--><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.13.2</version><scope>test</scope></dependency></dependencies>
</project>

3、给项目添加Web功能

打开项目结构窗口,在列表里选择【Modules】
在这里插入图片描述

单击【+】按钮,添加Web功能
在这里插入图片描述

在这里插入图片描述

单击【Create Artifact】按钮,将名称改为“SpringMvcDemo01”

在这里插入图片描述

单击【OK】按钮,可以看到项目多了一个web目录

在这里插入图片描述

4、创建三个页面

在WEB-INF里创建views子目录(存放JSP页面)
在这里插入图片描述

(1)创建登录页面

在views目录里创建登录页面 - login.jsp
在这里插入图片描述

<%--Created by IntelliJ IDEA.User: AdministratorDate: 2023/3/14Time: 9:08To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>用户登录</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8" ><script src="js/check.js"></script>
</head>
<body>
<h3 style="text-align: center">用户登录</h3>
<form id="frmLogin" action="login" method="post"><table class="tb" border="1" cellpadding="10" style="margin: 0px auto"><tr><td align="center">账号</td><td><input id="username" type="text" name="username"/></td></tr><tr><td align="center">密码</td><td><input id="password" type="password" name="password"/></td></tr><tr align="center"><td colspan="2"><input type="submit" value="登录" onclick="return checkLoginForm()"/><input type="reset" value="重置"/></td></tr></table>
</form>
</body>
</html>

(2)创建登录成功页面

在views目录里创建登录成功页面 - success.jsp
在这里插入图片描述

<%--Created by IntelliJ IDEA.User: AdministratorDate: 2023/3/14Time: 9:09To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html><head><title>登录成功</title></head><body><h1>${username},登录成功!</h1></body>
</html>

(3)创建登录失败页面

在views目录里创建登录失败页面 - failure.jsp
在这里插入图片描述

<%--Created by IntelliJ IDEA.User: AdministratorDate: 2023/3/14Time: 9:11To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html><head><title>登录失败</title></head><body><h1>${username},登录失败!</h1></body>
</html>

5、创建登录控制器

创建net.hf.spring.controller包,然后在包里创建LoginController类
在这里插入图片描述

package net.hf.spring.controller;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;import javax.servlet.http.HttpSession;/*** 功能:登录控制器* 作者:hf* 日期:2023年03月08日*/
@Controller // 交给Spring容器来管理
public class LoginController {@PostMapping("/login")  // 可用@RequestMapping("/login")public String login(@RequestParam("username") String username,@RequestParam("password") String password,HttpSession session) {// 将登录表单提交的用户名写入会话session.setAttribute("username", username);// 判断用户是否登录成功if (username.equals("hf") && password.equals("123456")) {// 返回逻辑视图名success,表明跳转到登录成功页面return "success";} // 返回逻辑视图名failure,表明跳转到登录失败页面return "failure"; }
}

6、创建Spring配置文件

在resources里创建mvc子目录,然后在子目录里创建spring-config.xml
在这里插入图片描述

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd"><!--组件扫描--><context:component-scan base-package="net.hf.spring" /></beans>

7、创建Spring MVC配置文件

在resources/mvc目录里创建spring-mvc-config.xml
在这里插入图片描述

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xmlns:mvc="http://www.springframework.org/schema/mvc"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/contexthttps://www.springframework.org/schema/context/spring-context.xsdhttp://www.springframework.org/schema/mvchttps://www.springframework.org/schema/mvc/spring-mvc.xsd"><!--采用注解驱动--><mvc:annotation-driven/><!--扫描控制器--><context:component-scan base-package="net.hf.spring.controller"/><!--定义内部资源视图解析器:负责解析控制器里从逻辑视图到物理页面的映射--><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/><property name="prefix" value="/WEB-INF/views/"/> <!--路径--><property name="suffix" value=".jsp"/> <!--扩展名--></bean>
</beans>

8、修改Web部署描述文件

一个Web项目启动时最先要读取web.xml文件
在web/WEB-INF目录里打开web.xml文件
在这里插入图片描述

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaeehttp://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0"><!--设置启动首页--><welcome-file-list><welcome-file>/WEB-INF/views/login.jsp</welcome-file></welcome-file-list><!--Spring容器加载监听器,让Spring随着Web项目启动而初始化--><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><!--指定Spring配置文件位置--><context-param><param-name>contextConfigLocation</param-name><param-value>classpath:mvc/spring-config.xml</param-value></context-param><!--注册Spring前端控制器,加载Spring MVC配置文件--><servlet><servlet-name>DispatcherServlet</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>classpath:mvc/spring-mvc-config.xml</param-value></init-param><load-on-startup>1</load-on-startup> <!--数字越小,启动级别越高--></servlet><servlet-mapping><servlet-name>DispatcherServlet</servlet-name><url-pattern>/</url-pattern>  <!--/”表明拦截一切请求--></servlet-mapping><!--设置字符编码过滤器--><filter><filter-name>Character Encoding</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><init-param><param-name>encoding</param-name><param-value>utf-8</param-value></init-param></filter><filter-mapping><filter-name>Character Encoding</filter-name><url-pattern>/*</url-pattern> <!--/*表明过滤一切请求--></filter-mapping>
</web-app>

对应关系图
在这里插入图片描述

9、配置Tomcat服务器

单击工具栏上的【Curren File】

在这里插入图片描述

弹出【Run/Debug Configurations】窗口
在这里插入图片描述

添加本地的Tomcat服务器
在这里插入图片描述

对服务器进行设置(配置应用服务器,部署Web项目)
在这里插入图片描述

在这里插入图片描述

注意项目的URL
在这里插入图片描述

单击【OK】按钮
在这里插入图片描述

10、添加项目对Tomcat的依赖

打开【Project Structure】窗口,选择Modules对应的Dependencies,单击【+】按钮
在这里插入图片描述

添加应用服务器库 - Tomcat 8.5.86
在这里插入图片描述

单击【Add Selected】按钮
在这里插入图片描述

单击【OK】按钮

11、启动Tomcat服务器

单击工具栏上绿色的运行按钮
启动失败,输出目录没有项目运行所需的jar包
在这里插入图片描述

配置Artifacts,添加项目正常运行所需的jar包
在这里插入图片描述

单击【Put into /WEB-INF/lib】菜单项
在这里插入图片描述
单击【OK】按钮
启动服务器,查看结果

在这里插入图片描述

12、测试登录功能

登录成功
在这里插入图片描述
登录失败

在这里插入图片描述

二、实战练习

任务1、设置项目首页 - index.jsp

页面显示内容 - Welcome to Spring MVC World!与系统当前日期时间

1、修改web.xml文件

注释掉“设置启动首页”元素(删除也可以)
在这里插入图片描述

2、创建首页文件

在views目录里创建首页文件 - index.jsp
在这里插入图片描述

<%@ page import="java.util.Date" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html><head><title>首页</title></head><body><h1>Welcome to Spring MVC World~</h1><h3><%= new Date() %></h3> <!--JSP表达式元素--></body>
</html>

此时,启动服务器,查看效果
在这里插入图片描述

3、修改登录控制器

在登录控制器里LoginController里添加一个方法能够跳转到首页
在这里插入图片描述

4、启动服务器,查看效果

访问http://localhost:8080/SpringMvcDemo01/
在这里插入图片描述

任务2、首页添加登录链接,单击跳转到登录页面

1、修改首页文件

添加一个超链接,跳转到登录页面
在这里插入图片描述

启动服务器
在这里插入图片描述

单击【跳转到登录页面】超链接
在这里插入图片描述
修改超链接元素
在这里插入图片描述

2、修改登录控制器

在LoginController里添加一个跳转到登录页面的方法toLogin()
在这里插入图片描述

3、启动服务器,查看效果

显示首页
在这里插入图片描述

单击【跳转到登录页面】超链接
在这里插入图片描述

任务3、利用Spring MVC配置文件实现快捷页面跳转

1、修改Spring MVC配置文件

定义两个视图控制器来负责页面跳转

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xmlns:mvc="http://www.springframework.org/schema/mvc"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/contexthttps://www.springframework.org/schema/context/spring-context.xsdhttp://www.springframework.org/schema/mvchttps://www.springframework.org/schema/mvc/spring-mvc.xsd"><!--采用注解驱动--><mvc:annotation-driven/><!--扫描控制器--><context:component-scan base-package="net.hf.spring.controller"/><!--定义内部资源视图解析器--><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/><property name="prefix" value="/WEB-INF/views/"/><property name="suffix" value=".jsp"/></bean><!--定义视图控制器--><mvc:view-controller path="/" view-name="index"/><mvc:view-controller path="/toLogin" view-name="login"/>
</beans>

2、修改登录控制器

删除或者注释两个负责页面跳转的方法:index()、toLogin()
在这里插入图片描述

3、启动服务器,查看效果

显示首页(说明Spring MVC配置文件里的第一个视图控制器生效)
在这里插入图片描述

单击【跳转到登录页面】超链接,跳转到了登录页面(说明Spring MVC配置文件里的第二个视图控制器也生效了)
在这里插入图片描述

任务4、添加静态资源,让Spring MVC正确处理

1、添加一张图片

在WEB-INF里创建images目录,将图片gingko.jpg拷贝进来
在这里插入图片描述

2、修改首页文件

增加显示图片的元素
在这里插入图片描述

3、启动服务器,查看效果

首页无法正常显示图片,也就是说明应用无法访问静态的图片资源
在这里插入图片描述

4、修改Spring MVC配置文件

单独处理静态资源
在这里插入图片描述

5、修改首页文件

图片源采用虚拟路径,由配置文件负责映射到真实路径
在这里插入图片描述

6、重启服务器,查看效果

在这里插入图片描述

课堂练习

(1)添加CSS样式表

在WEB-INF里创建css目录,在里面创建样式文件index.css,负责首页的样式(元素全部居中,设置页面背景颜色,去掉超链接的下划线……)
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

(2)添加JavaScript脚本

在WEB-INF里创建js目录,在里面创建脚本文件check.js,负责登录页面的非空校验(先进行用户名非空校验,后进行密码非空校验)
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

任务5、请求服务器端返回的简单字符串

1、创建获取字符串控制器

获取字符串控制器 - GetStringController
在这里插入图片描述

package net.hf.spring.controller;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;/*** 功能:获取字符串控制器* 作者:hf* 日期:2023年03月21日*/
@Controller
public class GetStringController {@GetMapping("/getString")@ResponseBody // 响应正文注解,表明返回普通字符串而不是返回逻辑视图名public String getString() {return "Spring MVC真好玩~";}
}

2、启动服务器,查看效果

访问http://localhost:8080/SpringMvcDemo01/getString
在这里插入图片描述

3、修改获取字符串控制器

设置返回字符串采用的编码
在这里插入图片描述

4、重启服务器,查看效果

访问http://localhost:8080/SpringMvcDemo01/getString
在这里插入图片描述

思考题:能否让返回字符串有点样式?
设置返回普通文本,返回字符串不认网页标签
在这里插入图片描述

设置返回网页文本,返回字符串才认网页标签
在这里插入图片描述

任务6、请求服务器端返回的JSON数据

1、创建用户实体类

创建net.hf.spring.bean包,然后在包里创建User类
在这里插入图片描述

用户实体类对应用户表
在这里插入图片描述

package net.hf.spring.bean;import java.util.Date;/*** 功能:用户实体类* 作者:hf* 日期:2023年03月21日*/
public class User {private int id;private String username;private String password;private String telephone;private Date registerTime;private int popedom;public int getId() {return id;}public void setId(int id) {this.id = id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public String getTelephone() {return telephone;}public void setTelephone(String telephone) {this.telephone = telephone;}public Date getRegisterTime() {return registerTime;}public void setRegisterTime(Date registerTime) {this.registerTime = registerTime;}public int getPopedom() {return popedom;}public void setPopedom(int popedom) {this.popedom = popedom;}@Overridepublic String toString() {return "User{" +"id=" + id +", username='" + username + '\'' +", password='" + password + '\'' +", telephone='" + telephone + '\'' +", registerTime=" + registerTime +", popedom=" + popedom +'}';}
}

2、创建获取JSON控制器

获取JSON控制器 - GetJsonController
在这里插入图片描述

package net.hf.spring.controller;import net.hf.spring.bean.User;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.ArrayList;
import java.util.Date;
import java.util.List;/*** 功能:获取JSON控制器* 作者:hf* 日期:2023年03月21日*/
@RestController // @RestController是@Controller和@ResponseBody的结合
public class GetJsonController {@GetMapping(value = "/getJson", produces = "application/json; charset=utf-8")public User getJson() {// 创建用户对象User user = new User();// 设置用户对象属性user.setId(1);user.setUsername("萌萌哒");user.setPassword("123456");user.setTelephone("13890903456");user.setRegisterTime(new Date());user.setPopedom(1);// 返回用户对象(按照请求映射注解的参数设置转换成JSON)return user;}@GetMapping(value = "/getJsonArray", produces = "application/json; charset=utf-8")public List<User> getJsonArray() {// 创建用户列表List<User> users = new ArrayList<>();// 创建第1个用户User user = new User();user.setId(1);user.setUsername("萌萌哒");user.setPassword("123456");user.setTelephone("13890903456");user.setRegisterTime(new Date());user.setPopedom(1);// 将用户添加到用户列表users.add(user);// 创建第2个用户user = new User();user.setId(2);user.setUsername("康科德");user.setPassword("222222");user.setTelephone("13856567890");user.setRegisterTime(new Date());user.setPopedom(1);// 将用户添加到用户列表users.add(user);// 创建第3个用户user = new User();user.setId(3);user.setUsername("娃哈哈");user.setPassword("333333");user.setTelephone("15890905678");user.setRegisterTime(new Date());user.setPopedom(1);// 将用户添加到用户列表users.add(user);// 返回用户列表return users;}
}

3、给项目添加JSON依赖

在pom.xml文件里添加对json的支持
在这里插入图片描述

<!--对json的支持-->                                        
<dependency>                                               <groupId>com.fasterxml.jackson.core</groupId>          <artifactId>jackson-core</artifactId>                  <version>2.9.7</version>                               
</dependency>                                              
<dependency>                                               <groupId>com.fasterxml.jackson.core</groupId>          <artifactId>jackson-databind</artifactId>              <version>2.9.7</version>                               
</dependency>                                              
<dependency>                                               <groupId>com.fasterxml.jackson.core</groupId>          <artifactId>jackson-annotations</artifactId>           <version>2.9.7</version>                               
</dependency>                                              

4、启动服务器,查看结果

访问http://localhost:8080/SpringMvcDemo01/getJson
在这里插入图片描述

需要将刚才新添加的依赖要放到输出目录
在这里插入图片描述

添加之后,lib里就有了对json支持的依赖包
在这里插入图片描述

重启服务器,再次访问,查看效果
在这里插入图片描述

访问http://localhost:8080/SpringMVCDemo01/getJsonArray
在这里插入图片描述

任务7、请求服务器端返回的XML数据

1、创建获取XML控制器

获取XML控制器 - GetXmlController

在这里插入图片描述

package net.hf.spring.controller;import net.hf.spring.bean.User;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.ArrayList;
import java.util.Date;
import java.util.List;/*** 功能:获取XML控制器* 作者:hf* 日期:2023年03月21日*/
@RestController
public class GetXmlController {@GetMapping(value = "/getXml", produces = "application/xml; charset=utf-8")public List<User> getXml() {// 创建用户列表List<User> users = new ArrayList<>();// 创建第1个用户User user = new User();user.setId(1);user.setUsername("萌萌哒");user.setPassword("123456");user.setTelephone("13890903456");user.setRegisterTime(new Date());user.setPopedom(1);// 将用户添加到用户列表users.add(user);// 创建第2个用户user = new User();user.setId(2);user.setUsername("康科德");user.setPassword("222222");user.setTelephone("13856567890");user.setRegisterTime(new Date());user.setPopedom(1);// 将用户添加到用户列表users.add(user);// 创建第3个用户user = new User();user.setId(3);user.setUsername("娃哈哈");user.setPassword("333333");user.setTelephone("15890905678");user.setRegisterTime(new Date());user.setPopedom(1);// 将用户添加到用户列表users.add(user);// 返回用户列表return users;}
}

2、项目添加XML的依赖

在pom.xml文件里添加对xml的支持
在这里插入图片描述

<!--对xml的支持-->
<dependency><groupId>com.fasterxml.jackson.dataformat</groupId><artifactId>jackson-dataformat-xml</artifactId><version>2.5.3</version>
</dependency>

3、将依赖添加到输出目录

在项目结构窗口里将依赖添加到输出目录
在这里插入图片描述

添加之后的情况
在这里插入图片描述

4、启动服务器,查看效果

访问http://localhost:8080/SpringMvcDemo01/getXml

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/352782.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

硬件工程师-BOOST升压电源设计

一、Boost变换原理 开关闭合时&#xff0c;电感电压等于输入电压 开关断开时&#xff0c;电感电压输出电压-输入电压&#xff0c; 电感的感生电动势&#xff0c;N ΔΦ磁通的变化率&#xff0c;Δt时间 假设开关闭合与开关断开&#xff0c;开关断开时能量全部释放光 将第三个式…

【Python】深度理解Class类、Object类、Type元类的概念和关系

深度理解Class类、Object类、Type元类 1.Class类、Object类、Type元类的表面关系2.Class、Object、Type解释3.关系详解4.那么如何看待object、type在Python面对对象概念中的一席之地呢&#xff1f;5.那么object、type扮演了什么样的角色呢&#xff1f;他们对class又分别做了什么…

MongoDB(学习笔记1.0)

最近在学非关系型数据库MongoDB&#xff0c;猛地用起来的真的没关系型数据库方便啊。 首先还是数据库的安装&#xff1a; 安装直接去官网安装即可&#xff0c;官网地址&#xff1a;MongoDB: The Developer Data Platform | MongoDB 当前也有免安装版的&#xff0c;这里就不再…

京东数据分析软件工具(京东618销量查询)

这一期&#xff0c;我们主要分享今年618京东美妆的预售数据&#xff0c;包括面部护肤、香水彩妆、男士面部护肤品类。 -面部护肤- 今年618&#xff0c;面部护肤品类在京东累计预售量达到130万件&#xff0c;预售额达到13亿元。预售期间&#xff0c;护肤品类均价在1010元左右。期…

Android 使用第三方字体

先看下图 一.全局替换方式 1.新建assets引入资源 2. 自定义application&#xff0c;将第三方的字体&#xff0c;替换当前系统默认字体 class App : Application() {override fun onCreate() {super.onCreate()initTypeface()}private fun initTypeface() {val typefaceByson…

Android 字体大小(fontScale)不随系统设置变化

需求 App字体大小不变 如果用户将系统字体大小设置的非常大&#xff0c;可能导致APP的文字大小显示异常。 目标效果是&#xff0c;APP内字体大小不随系统设置的 字体大小 变化。 原始效果 系统的字体大小设置为 超大 时&#xff1a;&#xff08;字体大小 可变&#xff09; 目…

Android 自带的字体库、字体样式

1、设置字体 android:fontFamily“字体样式” 1、sans-serif-smallcaps &#xff08;左边只设置字体&#xff0c;右边设置加粗&#xff09; 2、sans-serif 3、cursive 4、sans-serif-black 5、sans-serif-condensed-light 6、sans-serif-thin 7、serif 8、serif-monospa…

android屏幕大小字体大小,Android字体大小自适应不同分辨率的解决办法

Android字体大小自适应不同分辨率的解决办法 今天有人问我&#xff0c;Android系统不同分辨率&#xff0c;不同大小的手机&#xff0c;字体大小怎么去适应呢&#xff1f;其实字体的适应和图片的适应是一个道理的。 一、原理如下&#xff1a; 假设需要适应320x240&#xff0c;48…

Android切换字体

有时候需要根据UI需求切换项目字体&#xff0c;步骤如下&#xff1a; 准备字体文件&#xff0c;示例使用ttf文件&#xff0c;新建font文件夹&#xff1a; 将ttf文件放到res/font目录下 设置全局字体&#xff0c;系统主题添加 <item name"android:fontFamily">f…

Android 字体颜色设置及颜色表

1、在android中经常看到设置的颜色为八位的十六进制的颜色值&#xff0c;例如&#xff1a; public static final class color { public static final int lightblue0x7f040000; } 或者在Java中tx.setTextColor(0xffff00f); 说明&#xff1a; 0xffff00ff是int类型的数据&#…

IOS字体与安卓字体渲染不一致

IOS字体与安卓字体渲染不一致 问题: 前端开发中经常会遇到各种各样的兼容问题,记录一次IOS字体与安卓字体渲染不一致,当字体包名字中包含’-Bold’时 错误代码如下: font-family: DINAlternate-Bold ; font-weight: bold;IOS: 不会渲染’font-weight: bold’只是加载了’…

android中文字体加粗,android TextView设置中文字体加粗实现方法

android TextView设置中文字体加粗实现方法 英文设置加粗可以在xml里面设置: 复制代码 代码如下: android:textStyle="bold" 英文还可以直接在String文件里面直接这样填写: 复制代码 代码如下: Plain, bold, italic, bold-italic b代码加粗,i代表倾斜 中文设置加粗就…

android常用字体代码,Android TextView设置字体风格多种组合

在开发应用过程中经常会遇到显示一些不同的字体风格的信息犹如默认的LockScreen上面的时间和充电信息。对于类似的情况,可能第一反应就是用不同的多个TextView来实现,对于每个TextView设置不同的字体风格以满足需求。 这里推荐的做法是使用Android.text.*;和android.text.sty…

Android 字体粗细的设置

转载:https://juejin.im/post/597d88f75188257fc2177c36 如何实现 “中间这几个字要加粗&#xff0c;但是不要太粗&#xff0c;比较纤细的那种粗” &#xff1f; 分享一个最近做业务遇到的简单又蛮有意思的的文本显示处理过程。具体就是有这么一段文字&#xff0c;类似“转盘…

Android字体引入

2个方案&#xff1a;①xml引入、②java代码引入。 效果图&#xff1a; 方法①&#xff1a;xml引入&#xff1a; 1.创建font目录&#xff1a; 2.把字体库复制到font目录下&#xff1a; 3.xml中&#xff0c;使用fontFamily引入字体库&#xff1a; <TextViewandroid:text"…

Android字体样式修改

效果图 准备字体 Download Alibaba Sans比如阿里巴巴普惠体&#xff0c;也可以其他网站找一些对应的资源。 字体使用 将字体文件放到res/font文件夹下&#xff0c;如果没有font文件&#xff0c;则新建一个。 添加到font路径下的字体文件&#xff0c;明明不能是汉字&#xff…

玩转安卓字体

起因 最近公司有个需求&#xff0c;需要做 Widget &#xff0c;内心其实是拒绝的&#xff0c;因为这个玩意儿特别难用&#xff0c;而且限制重重&#xff0c;但没办法&#xff0c;也不能不做&#xff0c;那就开始吧。 本来以为挺简单的东西&#xff0c;一个列表展示数据&#…

iPadPro看电影之MKV转MP4视频格式教程

拥有了苹果iPadPro如果不看高清电影那就有点可惜了&#xff0c;虽说在线看电影也不错&#xff0c;但就目前这种网络环境&#xff0c;还别说很多时候没有Wifi网络&#xff0c;即使能上网很多时候网速也无法支持流畅的在线播放普清电影&#xff0c;更不用说高清电影了。怎么办&am…

如何向ipad上传视频(使用iTunes)

1.先对iTunes做个简单介绍&#xff1a; iTunes是一款媒体播放器的应用程序&#xff0c;2001年1月10日由苹果电脑在旧金山的Macworld Expo推出&#xff0c;用来播放以及管理数字音乐和与视频文件。iTunes能连接到iTunes Store&#xff0c;以便下载购买的数字音乐、音乐影片、电视…

Mac电脑使用:通过Mac电脑导出iPhone手机里面的视频(不是iTunes导出视频的方法)

分享一个通过Mac电脑导出iPhone手机里面的视频的方法,这个方法和通过iTunes导出手机视频的方法是并行关系。 方法很简单,就是通过Mac电脑系统里面自带的图像捕捉工具来操作。 具体步骤如下所示: 1.把iPhone手机连接到你的Mac电脑上面,然后打开Launchpad; 2.在Launchpad中找…