0.1 개요
이 사용자 가이드는 웹 개발에 관심이 있는 사람들과 Java를 사용하여 웹 애플리케이션을 개발하려는 사람들을 위해 작성되었습니다. 읽기를 시작하기 전에 다음 핵심 기술에 대한 기본 지식이 있어야 합니다.
HTTP 요청 응답 주기
.JavaBeans;
.JSP 및 JSP 태그 라이브러리
. 귀하의 편의를 위해 이에 대해 자세히 알아볼 수 있는 몇 가지 유용한 링크를 제공합니다.
이미 Java 언어 자체에 익숙하지만 이러한 기술을 모르는 경우 이 가이드인 Java Web Services Tutorial을 잘 살펴보시기 바랍니다. PDF 버전은 여기에서 다운로드할 수 있습니다.
이미 다른 플랫폼용 웹 애플리케이션 개발 경험이 있다면 여기에서 필요한 정보를 찾을 수도 있습니다. Struts에서 사용되는 기술은 다른 Java 웹 제품에서도 사용될 수 있으므로 이러한 배경 지식은 모든 Java 프로젝트에 유용합니다.
아직 Java 언어에 대해 잘 모른다면 다른 가이드인 The Java Tutorial을 살펴보는 것이 좋습니다. Java Tutorial과 Java Web Services Tutarial의 내용이 겹칠 수 있으므로 함께 읽는 것이 가장 좋습니다.
일반적인 Java 애플리케이션 개발 방법을 알고 싶다면 여기로 가서 http://developer.java.sun.com/developer/onlineTraining/new2java/divelog/part1/toc.jsp를 살펴보세요.' TARGET= _blank>Java를 처음 접하시는 분에게 큰 도움이 될 수 있습니다.
0.2 HTTP, HTML 및 사용자 에이전트
우리 모두 알고 있듯이 인터넷은 HTTP 프로토콜과 HTML 언어를 기반으로 구축되었습니다. 사용자 에이전트는 HTTP 프로토콜을 사용하여 웹 브라우저처럼 HTML 문서를 요청하며, 브라우저는 HTML 문서를 형식화하고 사용자에게 표시하는 역할을 합니다. HTTP 프로토콜은 전송에 사용되는 반면 HTML은 웹 및 웹 응용 프로그램에서 사용되는 범용 언어입니다.
웹 애플리케이션을 개발할 때 일부 Java 프로그래머는 HTML 언어를 직접 작성하는 반면 다른 프로그래머는 이를 전문 페이지 디자이너에게 작성하도록 맡깁니다.
HTTP, HTML 및 사용자 에이전트에 대한 자세한 내용은
, Dave Raggett의 HTML 시작하기
HTTP 개요를 참조하세요. /1.1 사양;
.HTTP 기본 및 다이제스트 인증 사양;
.상태 관리 메커니즘 사양(쿠키)
0.3 HTTP 요청 응답 주기
웹 개발자에게 가장 중요한 것은 HTTP입니다. 요청 응답 주기, HTTP를 사용하여 요청을 제출한 다음 HTTP 서버(예: 웹 서버)가 응답을 반환합니다. 웹 개발 및 디자인을 할 때 HTTP 응답을 반환하도록 HTTP 요청을 디자인합니다. Struts 프레임워크는 이 주기를 추상화하며, 우리에게 더 중요한 것은 뒤에서 무슨 일이 일어나고 있는지 알아야 한다는 것입니다.
HTTP 요청 응답 주기에 익숙하지 않은 경우 Java 웹 서비스 튜토리얼(http://java.sun.com/webservices/docs/1.0/tutorial/doc)에서 HTTP 개요를 읽어 보시기 바랍니다. / HTTP.html#63796
0.4 자바 언어 및 애플리케이션 프레임워크
Struts 프레임워크는 요즘 가장 널리 사용되는 다목적 프로그래밍 언어입니다. (역자 주: Java를 설명하는 것은 적절하지 않다고 생각합니다. 이런 언어는 전혀
(이상) Java로 작성되었습니다. Java는 객체 지향 프로그래밍 언어이며 Struts는 객체 지향 기술을 활용합니다. 또한 Java 자체는 스레드를 잘 지원하며 동시에 여러 작업을 수행할 수 있습니다. Java 언어, 객체 지향 프로그래밍 및 스레드에 대한 좋은 이해는 Struts를 마스터하고 이 사용자 가이드를 사용하는 데 큰 도움이 될 것입니다.
Java 언어 및 스레드를 배우려면 다음 자료를 참조할 수 있습니다.
. Java 언어 자습서의 Java 언어 학습
.
이미 Java 및 객체 지향 프로그래밍을 사용해 본 적이 있더라도 애플리케이션 프레임워크를 만들고 사용하는 것은 프로그래밍에 큰 도움이 될 것입니다. 애플리케이션 프레임워크에 대한 자세한 내용은 Ralph E. Johnson 및 Brian Foote의 재사용 가능한 클래스 설계, Mohamed Fayad 및 Douglas C. Schmidt의 객체 지향 애플리케이션 프레임워크 두 가지 백서를 참조하세요. -side 프레임워크라면 다음 두 페이지가 도움이 될 수 있습니다: 1과 2
0.5 JavaBeans
많은 Java 애플리케이션과 마찬가지로 대부분의 Struts 객체는 JavaBeans로 설계되었습니다. JavaBean 디자인 패턴을 사용하면 Java 개발자 및 Java 배포 도구가 Struts 클래스에 더 쉽게 액세스할 수 있습니다.
JavaBan은 원래 시각적 요소 프로그래밍만을 위해 만들어졌습니다. 이제 이 객체 디자인 패턴은 Struts 프레임워크와 같이 재사용 가능한 구성 요소의 기본 디자인에 널리 사용되었습니다.
JavaBeans에 대한 자세한 내용은 다음을 참조하세요.
.java.sun.com의 JavaBeans 구성 요소 아키텍처 문서. tion 및 JavaBeans 1.01 사양
.Java Tutorial의 JavaBean Trail
Java 웹 서비스 자습서의 JSP 페이지에 있는 JavaBeans 구성 요소
0.5.1 반사 및 자체 검사 메커니즘
반사는 개체의 어떤 멤버 변수나 메서드를 사용할 수 있는지 결정하는 처리 메커니즘입니다. 자체 검사는 JavaBean API에서 사용되는 특수한 형태의 반사입니다. 자체 검사를 사용하면 다른 객체가 액세스할 수 있는 JavaBean의 메소드를 알 수 있습니다.
Struts 프레임워크는 자체 검사 메커니즘을 사용하여 HTTP 매개변수를 JavaBean 속성으로 변환하고 JavaBean 속성을 사용하여 HTML 양식 필드를 조합합니다. 이 기술을 사용하면 JavaBeans와 HTML 양식 필드 간의 속성에 "양방향으로 액세스"하는 것이 더 쉬워집니다.
반영 및 내부 검사에 대한 자세한 내용은
을 참조하세요. JavaBeans API 사양의 8장
0.5.2 맵
JavaBeans는 데이터를 저장하기 위해 속성을 사용합니다. 그리고 다른 방법으로 이 데이터를 조작합니다. JavaBean은 편리하고 강력한 개체이지만 프로그래머가 데이터를 저장하는 데 사용할 수 있는 유일한 선택은 아닙니다. 또 다른 인기 있는 객체는 Map [java.util.map]입니다. 맵은 이름-값 쌍의 간단한 모음입니다. 매핑은 동적 데이터를 저장하는 편리한 방법으로 "백그라운드에서" 작동하는 경우가 많습니다.
0.5.3 Dynamic Beans(DynaBeans)
Dynamic Beans는 JavaBeans의 확장성과 Maps의 유연성을 결합합니다. 간단한 JavaBean을 정의하려는 경우에도 새 클래스를 생성하고, 속성 변수를 정의하고, 각 속성에 해당하는 두 개의 액세스 메소드(setXXX 및 getXXX)를 작성해야 한다는 것을 알고 있습니다. 동적 Bean은 XML 구성 파일을 통해 속성을 정의할 수 있습니다. 동적 Bean의 가상 속성은 일반 Java 메서드처럼 호출할 수 없으며 대신 리플렉션 및 자체 검사 메커니즘을 사용하여 구성 요소에 액세스해야 합니다.
Struts 프레임워크에서는 동적 Bean을 사용하여 HTML 양식을 설명할 수 있습니다. 이 전략을 사용하면 간단한 양식 필드에 대해 공식적인 JavaBean 하위 클래스를 생성할 필요가 없습니다.
위 내용은 Struts User and Development Guide(Part 1)의 내용입니다. 더 많은 관련 글은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!

javadevelopmentisnotentirelyplatform-IndectionentDuetoSeveralFactors.1) JVMVARIATIONSAFFERFFERFORMANDBEHAVIORACROSSDIFFERENTOS.2) nativelibrariesViajniintrictionPlatform-specificiss.3) filepathsandsystempropertiesdifferbetweenplatectry. 4)

Java 코드는 다른 플랫폼에서 실행할 때 성능 차이가 있습니다. 1) JVM의 구현 및 최적화 전략은 OracleJDK 및 OpenJDK와 같이 다릅니다. 2) 메모리 관리 및 스레드 스케줄링과 같은 운영 체제의 특성도 성능에 영향을 미칩니다. 3) 적절한 JVM을 선택하여 JVM 매개 변수 및 코드 최적화를 조정하여 성능을 향상시킬 수 있습니다.

Java'SplatformIndenceHASLIMITATIONSINTERFORMANTOWORHEAD, 버전 컴포팅 가능성, 도전 과제, 플랫폼-특이 적 식품, 및 JVMINSTALLATION/MAYMENDENT.ThesefacteThe "WriteOnce, Runanywhere"

Platform IndependenCealLowsProgramStorunannyplatformwithoutModification, whileCross-PlatformDevelopmentRequiressomplatformspecificAdJustments.platformIndence, PreemplifiedByjava, enableStalExecutionButmayPromiseperformance.cross-platformd

jitcompilationinjavaenhancesperformance는 platformindence.1) ItdynamicallyTransLatesByTecodeIntonativeMachinecodeatimeTime, 최적화 FREQUELTEREDCODE.2) TheJVMREMAINSPLATFORM- Independent, 허용 THEMEJAVAAPPLITIONTORUNONDIFFEREN을 허용합니다

javaispopularforcross-platformdesktopapplicationsduetoits "writeonce, runanywhere"철학

Java에서 플랫폼 별 코드를 작성하는 이유에는 특정 운영 체제 기능에 대한 액세스, 특정 하드웨어와 상호 작용하고 성능 최적화가 포함됩니다. 1) JNA 또는 JNI를 사용하여 Windows 레지스트리에 액세스하십시오. 2) JNI를 통한 Linux 특이 적 하드웨어 드라이버와 상호 작용; 3) 금속을 사용하여 JNI를 통해 MacOS의 게임 성능을 최적화하십시오. 그럼에도 불구하고 플랫폼 별 코드를 작성하면 코드의 이식성에 영향을 미치고 복잡성을 높이며 잠재적으로 성능 오버 헤드 및 보안 위험을 초래할 수 있습니다.

Java는 Cloud-Native Applications, Multi-Platform 배포 및 교차 운용성을 통해 플랫폼 독립성을 더욱 향상시킬 것입니다. 1) Cloud Native Applications는 Graalvm 및 Quarkus를 사용하여 시작 속도를 높입니다. 2) Java는 임베디드 장치, 모바일 장치 및 양자 컴퓨터로 확장됩니다. 3) Graalvm을 통해 Java는 Python 및 JavaScript와 같은 언어와 완벽하게 통합되어 언어 교차 수용 가능성을 향상시킵니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기
