2011-01-02 5 views
2

많은 기술을 탐색하고 있지만, 어떤 웹 프레임 워크에서 이것이 가장 쉽고/가능한지에 대한 귀하의 의견을 듣고 싶습니다. 현재 JSP/JSF/Primefaces를 찾고 있지만이 앱이 가능한지 확실하지 않습니다.이 웹 응용 프로그램을 만들 수있는 웹 프로그래밍 언어는 무엇입니까?

여기에 응용 프로그램의 기본 설명입니다 :

  1. 사용자는 사용자 이름과 암호 (어쩌면 내가 어떻게 든 오픈 ID 통합 할 수 있습니다)를 사용하여 로그인?

  2. 정말 멋진 UI를 사용하면 "요리"와 같이 특정 카테고리와 관련된 많은 질문 목록이 표시됩니다. (이 목록을 수동으로 컴파일하여 사용 가능하게 만듭니다.)

  3. 위의 질문 중 하나를 클릭하면 사용자가 링크/URL을 입력 할 수 있도록 작은 입력 상자가 열립니다.
  4. URL에 입력하는 링크의 URL이 해당 웹 페이지에서 동일한 질문 인 경우 해당 URL에 1 점이 부여됩니다. 그런 다음이 질문은 사라지고 정확하게 링크 된 모든 질문 목록이있는 다른 페이지에 추가됩니다.
  5. 화면 오른쪽에는 상위 10 위 지점에있는 사용자의 사용자 이름이 포함 된 리더 보드가 있습니다.

아이디어는 비교적 간단합니다. 많은 사람들이 기여할 수 있도록하여 특정 질문에 대한 외부 웹 사이트 링크를 컴파일 할 수 있어야합니다.

나는 Primefaces로 UI를 쉽게 만들 수 있음을 알고 있습니다. [B] JSP/JSF가 특정 URL에서 HTML을 구문 분석하여 단어가 포함되어 있는지 확인하면 확실하지 않습니다. [/ B] urllib을 사용하여 쉽게 파이썬으로이 작업을 수행 할 수 있지만, 웹 GUI 구축을 위해 파이썬을 사용하지 마십시오 (매우 어렵습니다). 가장 좋은 방법은 무엇입니까?

도움이 될 것입니다! 감사!

+6

반대 질문 : 어떤 웹 프레임 워크/언어 조합이 위와 같이 해결할 수 없습니까? –

답변

4

최선의 방법은 무엇이든지 최선입니다. 파이썬이 강점이 아니라 자바가 아니라면 자바를 사용하십시오. Python 전문가이고 Java가 거의 없다는 것을 알고 있다면 Python을 사용하십시오.

많은 플랫폼을 지원하는 인터넷 자원이 너무 많아 결정이 실제로 가장 적합한 것으로 떨어집니다.

+0

JSP/JSF 및 PrimeFaces에서이 작업을 수행 할 수 있습니까? 그렇다면 해당 기술을 사용하여 URL 구문 분석에 대한 설명서를 어디에서 찾을 수 있습니까? – PythonNewbie2

+0

Java의 Javadocs를 확인하십시오. URL은 단순한 String이며 모든 String 구문 분석 함수로 파싱 할 수 있습니다. http://download.oracle.com/javase/6/docs/api/java/lang/String.html – jmort253

+0

감사합니다. 실제로 URL의 웹 사이트로 이동하여 해당 페이지를 구문 분석하여 문제. 예를 들어, 사용자가 내 앱에서 "What web programming languages ​​..."라는 질문을 클릭하고 http://stackoverflow.com/questions/4577414/what-web-programming-languages-are-capable-of- 만들기 -이 - 웹 - 애플 리케이션 대답으로, 웹 애플 리케이션 StackoverFlow에 갈 수 있어야합니다 HTML을 구문 분석 문자열을 찾을 수 있다면 "어떤 웹 프로그래밍 언어"와 부울 값을 반환합니다. 원래 불명확 한 것을 유감스럽게 생각합니다. – PythonNewbie2

2

먼저 JSP/JSF를 잊어 버리십시오. 이것은 많은 문제가있는 오래된 조합입니다. Facelets/JSF를 고려해보십시오. Facelets는 현재 JSF 버전의 기본 템플릿 언어이며, JSP는 하위 호환성을 위해서만 존재합니다.

JSP/JSF가 특정 URL에서 HTML을 구문 분석하여 단어가 포함되어 있는지 확인하는 기능이 있는지 확실하지 않습니다.

데이터의 실제 가져 오기 및 내용의 구문 분석은 일반 Java 코드로 수행되지만 그렇습니다. 이것 자체는 JSF API와는 아무런 관련이 없습니다.

JSF를 사용하면 UI (입력 필드, 버튼 등)가 포함 된 Facelet을 만들 수 있습니다. 그런 다음 여전히 JSF를 사용하여 이것을 소위 backing bean에 바인딩합니다.이 bean은 주로 하나 또는 두 개의 JSF 특정 주석 (예 : @ManagedBean)이 적용된 일반적인 Java 클래스입니다.

사용자가 URL을 입력하고 버튼을 누르면 JSF는 Java 클래스 (backing bean)에서 몇 가지 조치 메소드를 호출합니다. 이 액션 메소드에서 이제 사용자가 입력 한 URL에 액세스 할 수 있으며 여기에서 일반 Java 코딩이 시작되고 JSF 세부 사항이 끝납니다. URL을 가져 오는 코드를 넣고 별도의 도우미 클래스 (관심사 분리) 나 독자적인 재량에 따라 필요한 구문 분석을 수행 할 수 있습니다. 너의 선택이야.

우연히도 우리 사무실에서 JSF를 사용하는 프로그래머가 아주 적어서 여기에서 요청한 내용과 다르지 않고 JSF를 사용하여 짧은 시간에 작업을 수행하는 데 성공했습니다. 따라서 실제로 그렇게 어렵지는 않습니다.)

+1

이것은 멋진 답변입니다! 도움이되어 주셔서 감사합니다! 나는 15 명의 담당자가 있다면, 나는 당신의 대답을 upvote 것입니다. 자바에서 액세스하는 원격 URL의 예를 가르쳐 주시겠습니까? 감사! – PythonNewbie2

+0

예제가 준비되어 있지는 않지만 그렇게 어렵지는 않습니다. 기본적으로 URL과 같은 URL url = 새 URL ("http://example.com"); UrlConnection connection = url.openConnection(); connection.connect(); InputStream input = connection.getInputStream(); 이것은 당신을 시작하게하기에 충분할 것입니다. 해당 클래스에 대한 Javadocs를 찾아보고 거기에서 작업하십시오. –

1

원하는 웹 기술이 없습니다. 특정 URL에서 발견 된 문서를 파싱하는 것은 웹 인터페이스를 구축 할 수 없습니다.

그러나 자바의 웹 기술은 JVM에서 실행되는 풍부하고 다양한 라이브러리 (너무 다양하고 다양 함) 집합에 제한없이 액세스 할 수있게 해줍니다. 무언가를하기위한 라이브러리가 있다면 자바 버전을 사용할 수 있다고 안전하게 말할 수 있습니다. 문서를 다운로드하고 파싱하는 것은 표준 라이브러리에서 사용할 수있는 것 이상을 필요로하지 않습니다 (의존성 삽입이나 우려 사항을 강조하지 않는 한). JSP 또는 JSF/Primefaces 등으로 프로젝트를 수행하는 데 아무런 문제가 없습니다.

이미 파이썬을 알고 있다고 주장하고 어쨌든 HTML/CSS를 추가해야하므로 장고를 사용해 보시기 바랍니다. 죽은 사람은 간단하고, OpenID 플러그인 세트를 선택할 수 있습니다. 무료로 관리 인터페이스를 제공합니다 (링크의 첫 번째 세트로 펌프를 준비 할 수 있습니다).

+0

고마워요! 나는 Django를 살펴볼 것이다. – PythonNewbie2

관련 문제